Eine Web-Service-Operation durch ein Kennwort schützen
Sie können einzelne Operationen (Methoden) in einem Web-Service durch ein Kennwort schützen, indem Sie eine Enterprise-Bean mit Methoden erstellen, die den Web-Service-Operationen entsprechen, und anschließend die Authentifizierungsverfahren von WebSphere Application Server so auf die Enterprise-Bean anwenden, dass vor dem Aufruf einer Web-Service-Operation ein Berechtigungsaufruf an die EJB-Methode abgesetzt wird.
Vorbereitende Schritte
Zusätzlich zu den in diesem Artikel beschriebenen Schritten zum Schützen eine Web-Service-Operation durch ein Kennwort müssen Sie den Server als eingehenden oder abgehenden Service konfigurieren und die Option Sicherheit auf Operationsebene aktivieren auswählen. Diesbezügliche Anweisungen finden Sie in den Artikeln Die Konfiguration eines vorhandenen Service für eingehende Daten ändern und Die Konfiguration eines vorhandenen Service für abgehende Daten ändern.
Damit eine im Service Integration Bus implementierte Anwendung die Sicherheit auf Operationsebene verwendet, müssen Sie die Klassenladerrichtlinie des Anwendungsservers auf "Einer" setzen. Nähere Informationen hierzu finden Sie im Artikel Klassenlader eines Servers konfigurieren.
Informationen zu diesem Vorgang
Für die Berechtigung auf Operationsebene erstellen Sie eine Enterprise-Bean mit Methoden, die den Operationen des Web-Service entsprechen. Diese EJB-Methoden führen keine Operationen aus. Sie sind lediglich Definitionseinheiten zur Gewährleistung der Sicherheit. Anschließend wenden Sie vorhandene Authentifizierungsverfahren von WebSphere Application Server auf die Enterprise-Bean anwenden. Bevor eine Web-Service-Operation aufgerufen wird, wird die EJB-Methode aufgerufen. Nach Erteilung der Berechtigung wird der Web-Service aufgerufen.
Ihr Ziel-Web-Service ist geschützt, da er in eine EAR-Datei (Ihr_Web-Service.ear) eingebettet ist, auf die die rollenbasierte Berechtigung angewendet wird. Eine allgemein verständliche Erläuterung dieses Prozesses finden Sie im Artikel Sicherheit auf Operationsebene: Rollenbasierte Berechtigung. Die Datei Ihr_Web_Service.ear wird in die Datei sibwsauthbean.ear importiert. Anschließend werden in der Datei sibwsauthbean.ear die Rollen festgelegt und Methoden zugeordnet. Die geänderte Datei sibwsauthbean.ear wird in WebSphere Application Server implementiert und anschließend werden den zuvor definierten Rollen Benutzer zugeordnet.
Die Installationsversion der Datei sibwsauthbean.ear befindet sich im Verzeichnis Stammverzeichnis_des_Anwendungsservers/installableApps, wobei Stammverzeichnis_des_Anwendungsservers für das Stammverzeichnis der Installation von WebSphere Application Server steht.
Die Datei sibwsauthbean.ear enthält für jeden Web-Service, den Sie schützen, eine EAR-Datei. Für den ersten Web-Service, den Sie mit Berechtigung auf Operationsebene schützen, kopieren Sie die Installationsversion der Datei sibwsauthbean.ear und speichern Sie Ihre Kopie außerhalb des Dateisystems des Anwendungsservers. Für alle nachfolgenden Web-Services, die Sie schützen möchten, ändern Sie dieselbe Kopie der Datei sibwsauthbean.ear.
Zum Aktivieren der Berechtigung auf Operationsebene verwenden Sie den Befehl
sibwsAuthGen und ein Assembliertool.
Sie können diese Tools
nur auf einem Windows-System verwenden. Deshalb müssen Sie alle Dateien, die Sie für diese Task benötigen, zunächst im Binärformat auf ein Windows-System kopieren. Dort erstellen und ändern Sie die EAR-Dateien und kopieren
die geänderte Datei sibwsauthbean.ear dann im Binärformat zurück auf das z/OS-System.
Führen Sie für jeden Web-Service, den Sie schützen möchten, die folgenden Schritte aus, um Web-Service-Operationen durch ein Kennwort zu schützen: