In diesem Abschritt wird die Verwendung der Datenstromwarteschlange in Verbindung mit Publish-/Subscribe-Berechtigungsprüfungen in
WebSphere MQ Publish/Subscribe beschrieben.
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.
Eine ähnliche Prüfung wird von WebSphere Event
Broker-Brokern vorgenommen, die Berechtigung zum Subskribieren bzw. Anzeigen wird dabei jedoch nicht geprüft. Stattdessen verwendet
WebSphere Event
Broker Zugriffssteuerungslisten (Access Control Lists, ACLs),
die Sie über die Workbench erstellen können, um die erforderlichen
Berechtigungen für Einzelthemen bereitzustellen.
Bevor Sie einen
WebSphere MQ Publish/Subscribe-Broker nach
WebSphere Event
Broker migrieren oder Ihre
WebSphere MQ Publish/Subscribe-Anwendungen für die Ausführung auf einem
WebSphere Event
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 Event
Broker in jeder
Eingabewarteschlange verarbeitet werden, weil Publisher Nachrichten nicht mehr in eine
Warteschlange mit demselben Namen wie der Datenstrom einreihen müssen. Konfigurieren Sie deshalb
äquivalente ACLs für alle Datenströme unter Verwendung der jeweiligen Qualifikationsmerkmale der
Themenebene.
- Der WebSphere Event
Broker-Broker überprüft nicht, ob subskribierende
Anwendungen über Anzeigeberechtigung für die Datenstromwarteschlange verfügen. Stattdessen modelliert WebSphere Event
Broker Datenströme, indem alle Abschnitte, die nicht Teil des Standarddatenstroms sind, mit dem eindeutigen Präfix
'$SYS/STREAM/<Datenstromname>/' versehen werden.
Mithilfe dieses Präfixes bleiben die Merkmale zur Partitionierung von Datenströmen erhalten und es können auch datenstromspezifische Zugriffssteuerungslisten eingerichtet werden. Da Themen im
Standarddatenstrom vom Broker nicht geändert werden, können Berechtigungen für Themen im
Standarddatenstrom über das Stammthema festgelegt werden.
Aus dem folgenden Diagramm geht hervor, welche Datenstromberechtigungen erforderlich sind.
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 in der Lage sind, in anderen
Datenströmen zu veröffentlichen oder diese zu subskribieren, ohne dass dies explizit in einer ACL,
die die relevante Einstellung überschreibt, festgelegt ist.
- 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.
Sie haben die Möglichkeit, Ausnahmen zu diesen Berechtigungen zu konfigurieren, indem Sie am
geeigneten Punkt eine ACL einfügen. Wenn Sie beispielsweise Bereitstellern für den Standarddatenstrom (PDefault) auch Veröffentlichungsberechtigung für StreamX erteilen möchten, müssen Sie eine explizite ACL an Punkt (3) erstellen, um diese Berechtigung zu erteilen. Durch diese Einstellung wird die Berechtigungsverweigerung an Punkt (2) überschrieben. In diesem Szenario sind Benutzer in
PDefault weiterhin nicht in der Lage, Veröffentlichungen in StreamY vorzunehmen.