In
WebSphere MQ Publish/Subscribe werden alle Überprüfungen von
Veröffentlichungs- und Subskribierungsberechtigungen gegen die Datenstromwarteschlange
durchgeführt:
- Veröffentlichende Anwendungen benötigen die Berechtigung zum Einreihen von Nachrichten in die
Datenstromwarteschlange.
- Der WebSphere MQ Publish/Subscribe-Broker überprüft die Berechtigung von
subskribierenden Anwendungen, die die Datenstromwarteschlange anzeigen möchten.
- Subskribierende Anwendungen benötigen die Berechtigung zum Einreihen von Nachrichten in die
Warteschlange, die sie für den Empfang ihrer Nachrichten benannt haben.
Dieselbe Überprüfung wird von WebSphere Message Broker-Brokern
durchgeführt, wobei die Subskribierungsberechtigung (zum Anzeigen) jedoch nicht mehr überprüft
wird.
Stattdessen können in WebSphere Message Broker sowohl der Publish-
als auch der Subscribe-Zugriff auf hierarchische Weise bis hinunter zu einzelnen Themenebenen
definiert werden. Zu diesem Zweck werden in der Workbench Zugriffssteuerungslisten (Access Control
Lists, ACLs) erstellt.
Bevor Sie einen
WebSphere MQ Publish/Subscribe-Broker auf
einen
WebSphere Message Broker-Ersatzbroker migrieren oder Ihre
WebSphere MQ Publish/Subscribe-Anwendungen für die Ausführung auf einem
WebSphere Message Broker migrieren, müssen Sie die folgenden
Sicherheitsauswirkungen prüfen:
- Veröffentlichende Anwendungen unterliegen denselben Überprüfungen, auch wenn die
Themensicherheit auf Ihrem Broker nicht aktiviert ist, denn die Berechtigung zum Einreihen einer
Nachricht in den Datenstrom oder die Veröffentlichungswarteschlange wird weiterhin von WebSphere MQ überprüft.
Allerdings können Datenstromveröffentlichungen von WebSphere Message Broker in
jeder Eingabewarteschlange verarbeitet werden, weil Publisher Nachrichten nicht mehr in eine
Warteschlange mit demselben Namen wie der Datenstrom einreihen müssen. Deshalb sollten Sie
äquivalente ACLs für alle Datenströme unter Verwendung der jeweiligen Qualifikationsmerkmale der
Themenebene zu konfigurieren.
- Der WebSphere Message Broker-Broker überprüft nicht, ob subskribierende
Anwendungen über die Berechtigung zum Anzeigen der Datenstromwarteschlange verfügen. Stattdessen
modelliert WebSphere Message Broker Datenströme, indem alle Themen, die nicht
Teil des Standarddatenstroms sind, mit dem eindeutigen Präfix '$SYS/STREAM/<Datenstromname>/'
versehen werden. Dadurch bleiben die Partitionierungsmerkmale von Datenströmen erhalten, und es
besteht die Möglichkeit, datenstromspezifische ACLs zu konfigurieren. Themen im Standarddatenstrom
werden vom Broker nicht geändert. Deshalb können Berechtigungen für Themen im Standarddatenstrom
über das Stammthema festgelegt werden.
Das folgende Diagramm zeigt die erforderlichen Datenstromberechtigungen. Das Beispiel
setzt voraus, dass die Standard-ACL für den Themenstamm für den Principal 'PublicGroup'
(Öffentliche Gruppe) aktualisiert und die Berechtigungen zum Veröffentlichen, Subskribieren und
persistenten Zustellen alle auf
deny (Verweigern) gesetzt wurden.
Bei diesem Beispiel wird davon ausgegangen, dass die folgenden Gruppen definiert
wurden:
- PDefault: Benutzergruppe, die berechtigt ist, Nachrichten im Standarddatenstrom zu
veröffentlichen
- SDefault: Benutzergruppe, die berechtigt ist, Subskriptionen für den Standarddatenstrom
einzurichten
- PStreamX: Benutzergruppe, die berechtigt ist, Nachrichten im Datenstrom StreamX zu
veröffentlichen
- SStreamX: Benutzergruppe, die berechtigt ist, Subskriptionen für den Datenstrom StreamX
einzurichten
- PStreamY: Benutzergruppe, die berechtigt ist, Nachrichten im Datenstrom StreamY zu
veröffentlichen
- SStreamY: Benutzergruppe, die berechtigt ist, Subskriptionen für den Datenstrom StreamY
einzurichten
Sie müssen Berechtigungen erteilen und verweigern, indem Sie folgende ACLs
konfigurieren:
- PDefault muss Veröffentlichungsberechtigung für das Stammverzeichnis und SDefault muss
Subskribierungsberechtigung für das Stammverzeichnis erteilt werden.
- PDefault muss Veröffentlichungsberechtigung für $SYS/STREAM/ und SDefault muss
Subskribierungsberechtigung für $SYS/STREAM/ verweigert werden.
Diese
Einstellungen stellen sicher, dass Publisher und Subskribenten des Standarddatenstroms nicht
automatisch in der Lage sind, in anderen Datenströmen zu veröffentlichen oder diese zu
subskribieren. Es muss eine ACL erstellt werden, durch die diese Einstellung explizit überschrieben
wird.
- PStreamX muss Veröffentlichungsberechtigung für $SYS/STREAM/StreamX/ und SStreamX muss
Subskribierungsberechtigung für $SYS/STREAM/StreamX/ erteilt werden.
Diese
Einstellungen überschreiben alle Einstellungen für übergeordnete Themen und begrenzen die
Veröffentlichungs- und Subskribierungsberechtigung auf Benutzer innerhalb dieser spezifischen
Gruppen.
- PStreamY muss Veröffentlichungsberechtigung für $SYS/STREAM/StreamY/ und SStreamY muss
Subskribierungsberechtigung für $SYS/STREAM/StreamY/ erteilt werden.
Diese
Einstellungen überschreiben alle Einstellungen für übergeordnete Themen und begrenzen die
Veröffentlichungs- und Subskribierungsberechtigung auf Benutzer innerhalb dieser spezifischen
Gruppen.
Wenn Sie Ausnahmen zu diesen Berechtigungen konfigurieren möchten, müssen Sie am
geeigneten Punkt eine ACL einfügen. Wenn Sie beispielsweise Publishern für den Standarddatenstrom
(PDefault) auch Veröffentlichungsberechtigung für den Datenstrom StreamX erteilen möchten, müssen
Sie eine explizite ACL an Punkt (3) erstellen, um diese Berechtigung zu erteilen, denn dadurch wird
die Berechtigungsverweigerung an Punkt (2) überschrieben. In diesem Szenario sind Benutzer der
Gruppe PDefault weiterhin nicht in der Lage, Veröffentlichungen im Datenstrom StreamY
durchzuführen.