Mit Hilfe der auf Methodenebene deklarativen Sicherheit von WebSphere kann der Zugriff auf Funktionen der Common Event Infrastructure eingeschränkt werden.
Die Common Event Infrastructure definiert sechs Sicherheitsrollen, von denen jede mit einer zugehörigen Gruppe Funktionen verknüpft wird. Diese Sicherheitsrollen steuern den Zugriff auf Programmierschnittstellen und Befehle. (In der Standardkonfiguration der Common Event Infrastructure ist die Verwendung dieser Rollen nicht erforderlich. In einer Network Deployment-Umgebung muss WebSphere ESB jedoch mit denselben Benutzern authentifiziert werden, die den Sicherheitsrollen der Common Event Infrastructure zugeordnet wurden. Weitere Informationen zu Sicherheitsrollen finden Sie unter Informationen zur Sicherheit und Aufgabenbereichsbasierte Berechtigung im Informationszentrum zu WebSphere Application Server.) Falls Sie bereits ein authentifizierter Benutzer von WebSphere ESB sind und die globale Sicherheit aktiviert wurde, können Sie auf die Ressourcen der Common Event Infrastructure zugreifen.
Wenn die Sicherheitsrollen über die Zuordnung bestimmter Benutzer zu den einzelnen Rollen verwendet werden, müssen die authentifizierten Benutzer mit den Benutzern identisch sein, die der Sicherheitsrolle zugeordnet wurden. Weitere Informationen zu authentifizierten Benutzern und zur Rolle RunAs finden Sie unter Benutzer RunAs-Aufgabenbereichen zuordnen.
Die folgende Tabelle enthält die Sicherheitsrollen und die Benutzertypen, die der jeweiligen Rolle zugeordnet werden.
Sicherheitsrolle | Benutzertypen |
---|---|
eventAdministrator | Ereigniskonsumenten, die in der Ereignisdatenbank gespeicherte Ereignisse abfragen, aktualisieren und löschen müssen. Diese Rolle ermöglicht den Zugriff auf die folgenden Schnittstellen:
|
eventConsumer | Ereigniskonsumenten, die in der Ereignisdatenbank gespeicherte Ereignisse abfragen müssen. Diese Rolle ermöglicht den Zugriff auf die folgenden Schnittstellen:
|
eventUpdater | Ereigniskonsumenten, die in der Ereignisdatenbank gespeicherte Ereignisse aktualisieren müssen. Diese Rolle ermöglicht den Zugriff auf die folgenden Schnittstellen:
|
eventCreator | Ereignisquellen, die Ereignisse mit Hilfe von synchronen EJB-Aufrufen an einen Emitter übergeben müssen. Diese Rolle ermöglicht den Zugriff auf die folgenden Schnittstellen:
Anmerkung: Die Rolle eventCreator schränkt den Zugriff auf die Ereignisübergabe nur dann ein, wenn der Emitter für die Verwendung synchroner EJB-Aufrufe zur Ereignisübergabe konfiguriert wurde.
Wenn der Emitter für die Ereignisübergabe das asynchrone JMS-Messaging verwendet, müssen Sie die JMS-Sicherheit verwenden, um den Zugriff auf das Ziel für die Ereignisübergabe zu beschränken.
|
catalogAdministrator | Ereigniskataloganwendungen, die Ereignisdefinitionen im Ereigniskatalog erstellen, aktualisieren, löschen oder abrufen müssen. Diese Rolle ermöglicht den Zugriff auf alle Methoden der Schnittstelle EventCatalog und alle Funktionen des Scripts eventcatalog.jacl. Da Änderungen am Ereigniskatalog zu einer Generierung von Ereignissen führen können, ermöglicht diese Rolle auch den Zugriff auf Ereignisübergabeschnittstellen. |
catalogReader | Ereigniskataloganwendungen, die Ereignisdefinitionen aus dem Ereigniskatalog abrufen müssen. Diese Rolle ermöglicht den Zugriff auf die folgenden Schnittstellen:
|
Die Sicherheitsrollen mit der größten Bedeutung für die Nutzung der Funktionalität der Common Event Infrastructure sind eventAdministrator und eventConsumer.
Das nachrichtengesteuerte Bean des Ereignisservers wird mit der Identität des Benutzers von WebSphere ESB ausgeführt. Wenn Sie zur Übergabe von Ereignissen an den Ereignisserver die asynchrone JMS-Übertragung verwenden und die methodenbasierte Sicherheit aktiviert wurde, müssen Sie diese Benutzeridentität der Rolle eventCreator zuordnen.
Wurde die Java 2-Sicherheit aktiviert, müssen Sie Ihre Richtliniendatei so modifizieren, dass der Zugriff auf bestimmte Funktionen freigegeben wird:
permission java.io.FilePermission "${java.io.tmpdir}${/}guid.lock", "read, write, delete"; permission java.net.SocketPermission "*", "resolve";
permission java.util.PropertyPermission "*", "read"; permission java.io.FilePermission "${was.install.root}${/}java${/}jre${/}lib${/}jxpath.properties", "read";