Übersicht über die Plattformkonfiguration und -bindungen
Die WS-Security-Richtlinie wird in der IBM® Erweiterung der Web-Service-Implementierungsdeskriptoren angegeben, wenn das Programmiermodell JAX-RPC verwendet wird, und in den Richtliniensätzen, wenn das Programmiermodell JAX-WS verwendet wird. Die Bindungsinformationen für die Unterstützung der WS-Security-Sicherheitsrichtlinie werden für die Programmiermodelle JAX-RPC und JAX-WS in der IBM Erweiterung der Web-Service-Implementierungsdeskriptoren gespeichert.
Aufgrund der Komplexität dieser Dateien wird empfohlen, den Implementierungsdeskriptor und die Bindungsdateien nicht manuell mit einem Texteditor zu editieren, weil diese Vorgehensweise sehr fehleranfällig ist. Stattdessen wird die Verwendung der von IBM bereitgestellten Tools für die Konfiguration der WS-Security-Vorgaben für eine Anwendung empfohlen. Sie finden diese Tools in der Administrationskonsole von WebSphere Application Server oder in einem Assembliertool. Weitere Informationen zu den IBM Assembliertools finden Sie in den Artikeln zu den Assembliertools.
Mit der Funktion für Richtliniensätze von WebSphere Application Server können Sie Ihre Web-Service-Konfiguration vereinfachen, weil Richtliniensätze die Sicherheits- und anderen Web-Service-Einstellungen in wiederverwendbare Einheiten gruppieren. Richtliniensätze sind Fakten zur Definition von Services. Ein Richtliniensatz enthält Richtlinientypen und ihre Einstellungen.
Zusätzlich zum Anwendungsimplementierungsdeskriptor und den Bindungsdateien verfügt WebSphere Application Server ab Version 6 über eine Konfiguration auf Zellenebene und eine Konfiguration auf Serverebene. Diese Konfigurationen gelten global für alle Anwendungen. Weil WebSphere Application Server Version 6 und höher auch Anwendungen der Version 5.x unterstützt, sind einige Konfigurationen nur für Anwendungen der Version 5.x gültig und einige nur für Anwendungen der Version 6 und höher.
Die folgende Abbildung veranschaulicht die Beziehung zwischen dem Anwendungsimplementierungsdeskriptor und Bindungsdateien und der Konfiguration auf Zellenebene (nur Network Deployment) oder Serverebene.
Plattformkonfiguration
- Cachezeitlimit für Nonce
- Diese Option, die auf Zellenebene (nur Network Deployment) und Serverebene angegeben werden kann, gibt das Cachezeitlimit für einen Nonce in Sekunden an.
- Maximale Nonce-Lebensdauer
- Diese Option, die auf Zellenebene (nur Network Deployment) und Serverebene angegeben werden kann, gibt den Standardwert für die Lebensdauer des Nonce in Sekunden an.
- Zeitliche Abweichung für Nonce
- Diese Option, die auf Zellenebene (nur Network Deployment) und Serverebene angegeben werden kann, gibt den Standardwert für die Zeitabweichung an, die aufgrund von Verzögerungen im Netz, Verarbeitungsverzögerungen usw. auftreten kann. Diese Angabe wird verwendet, um den Zeitpunkt für den Verfall des Nonce zu ermitteln. Die Zeitabweichung wird in Sekunden gemessen.
- Nonce-Caching verteilen
- Dieses Feature ermöglicht es, den Cache für den Nonce auf verschiedene Server in einem Cluster zu verteilen. Es ist in WebSphere Application Server ab Version 6.0.x verfügbar.
- Key-Locator
- Dieses Feature legt fest, wie die Schlüssel zum Signieren, Verschlüsseln und Entschlüsseln abgerufen werden. In WebSphere Application Server Version 6 und höher und in Version 5.x werden unterschiedliche Implementierungsklassen für den Key-Locator verwendet.
- Zertifikatssammelspeicher
- Dieses Feature gibt den Zertifikatsspeicher für die Validierung des Zertifikatspfads an. Es wird normalerweise zum Validieren von X.509-Token während der Signaturprüfung verwendet oder zum Erstellen eines X.509-Token mit einer im PKCS#7 verschlüsselten Zertifikatswiderrufsliste. Die Zertifikatswiderrufliste (Certificate Revocation List, CRL) wird nur für Anwendungen in WebSphere Application Server Version 6.x und höher unterstützt.
- Trust-Anchor
- Dieses Feature gibt die Vertrauenswürdigkeit für das Ausstellerzertifikat an und wird normalerweise während der Signaturprüfung zur Validierung des X.509-Token verwendet.
- Trusted-ID-Evaluator
- Dieses Feature gibt an, wie die Vertrauenswürdigkeit der Identität geprüft werden soll. Dieses Feature wird bei der Zusicherung der Identität verwendet.
- Anmeldezuordnungen
- Dieses Feature gibt die Bindung der Anmeldekonfiguration für die Authentifizierungsmethoden an. Dieses Feature wird nur in Anwendungen mit WebSphere Application Server Version 5.x verwendet und ist veraltet.
Standardbindungen
Die Konfiguration der Standardbindungen auf Zellenebene und auf Serverebene hat sich in WebSphere Application Server geändert. In den früheren Versionen konnten Sie nur einen einzigen Satz von Standardbindungen für die Zelle und optional einen Satz von Standardbindungen für jeden Server konfigurieren. In Version 7.0 und höher können Sie eine oder mehrere allgemeine Providerbindungen und eine oder mehrere Clientbindungen konfigurieren. Es kann jedoch nur eine allgemeine Providerbindung und eine allgemeine Clientbindung als Standardbindung definiert werden.
Die folgende Abbildung veranschaulicht die Beziehung zwischen der EAR-Datei (Application Enterprise Archive) und der Datei ws-security.xml.
Für EAR 1 und EAR 2 sind spezielle Bindungen in der Datei für Anwendungsbindungen definiert. Für EAR 3 und EAR 4 sind jedoch keine Bindungen in der Datei für Anwendungsbindungen definiert. Stattdessen müssen Sie die in der Datei ws-security.xml definierten Standardbindungen verwenden. Die Konfiguration wird durch die erste Konfiguration in der Hierarchie aufgelöst. Beispielsweise können drei Key-Locator mit dem Namen mykeylocator in der Datei für Anwendungsbindungen auf Serverebene und auf Zellenebene definiert sein.
Wird mykeylocator in der Anwendungsbindung referenziert, dann wird der in der Anwendungsbindung definierte Key-Locator verwendet. Der Bereich, in dem die Daten sichtbar sind, ist abhängig davon, wo die Daten definiert sind. Sind die Daten in der Anwendungsbindung definiert, ist die Sichtbarkeit auf die betreffende Anwendung begrenzt. Sind die Daten auf der Serverebene definiert, dann sind die Daten für alle auf dem betreffenden Server implementierten Anwendungen sichtbar. Sind die Daten auf der Zellenebene definiert, dann sind sie für alle Anwendungen sichtbar, die auf Servern in der betreffenden Zelle implementiert sind. Im Allgemeinen gilt folgendes Prinzip: Wenn Sie nicht möchten, dass die Daten mit anderen Anwendungen gemeinsam genutzt werden, definieren Sie die Konfiguration auf der Ebene der Anwendungsbindung.
Die folgende Abbildung zeigt die Beziehung der Bindungen auf Anwendungs-, Server- und Zellenebene (nur Network Deployment).
Allgemeine Bindungen
Allgemeine Bindungen werden als Standardbindungen auf Zellen- oder Serverebene verwendet. Die mit WebSphere Application Server bereitgestellten allgemeinen Bindungen sind zunächst als Standardbindungen definiert, aber Sie können eine andere Bindung als Standardbindung auswählen, oder Sie können die Standardbindungsebene ändern, z. B. von Bindung auf Zellenebene in Bindung auf Serverebene.
In Version 7.0 und höher gibt es zwei Typen von Bindungen: anwendungsspezifische Bindungen und allgemeine Bindungen. Beide Typen von Bindungen werden für WS-Security-Richtliniensätze unterstützt. Allgemeine Bindungen können von mehreren Anwendungen und für Trust-Service-Zuordnungen gemeinsam genutzt werden. Es gibt zwei Typen von allgemeinen Bindungen: eine für Service-Provider und eine für Service-Clients. Es können mehrere allgemeine Bindungen für den Provider und ebenso für den Client definiert werden.