Verteilten Cache und Sitzungsaffinität bei der Verwendung von Secure Conversation aktivieren

WebSphere Application Server unterstützt den Zugriffsschutz auf Nachrichtenebene in einer Clusterumgebung. Sie können Web Services Secure Conversation (WS-SecureConversation) für den Nachrichtenschutz für JAX-WS-Web-Services (Java™ API for XML Web Services 2.0) in einer Clusterumgebung verwenden.

Vorbereitende Schritte

Eine mit einem Sicherheitskontexttoken (SCT, Security Context Token) geschützte Web-Service-Anforderung wird an einen Server in einem Cluster weitergeleitet, aber dieses SCT wurde möglicherweise von einem anderen Server im Cluster ausgestellt oder erneuert. Wenn der verteilte Cache von WebSphere Application Server nicht für die Replikation konfiguriert ist oder nicht schnell genug repliziert wird, hat der Server, der die Anforderung verarbeitet, möglicherweise keinen Zugriff auf das SCT. Die in diesem Artikel beschriebenen Taskschritte müssen nur ausgeführt werden, wenn die Replikationseinstellung für Cluster-Member auf asynchrone Aktualisierung des verteilten Caches für Web Services Security gesetzt ist.

Weitere Informationen zu den Einstellungen für die Cacheaktualisierung finden Sie im Artikel "Verteilten Cache durch synchrone Aktualisierung und Tokenwiederherstellung aktivieren". Sie können den verteilten Cache für Web Services Security auch mit der Standardeinstellung aktivieren, die die synchrone Aktualisierung der Cluster-Member ermöglicht.

Informationen zu diesem Vorgang

Führen Sie die folgenden problemorientierten Schritte aus, um den verteilten Cache und die Sitzungsaffinität zu aktivieren, wenn Secure Conversation für den Zugriffsschutz auf Nachrichtenebene in einer Clusterumgebung verwendet wird.

Vorgehensweise

  1. Aktivieren Sie den verteilten Cache für das Sicherheitskontexttoken.
    1. Klicken Sie in der Administrationskonsole von WebSphere Application Server auf Services > Sicherheitscache.
    2. Wählen Sie das Kontrollkästchen Verteiltes Caching aktivieren.
    3. Klicken Sie auf das Optionsfeld, um Asynchrone Aktualisierung der Cluster-Member auszuwählen.
    4. Klicken Sie auf Anwenden und anschließend auf Speichern, um die Konfiguration zu speichern.
  2. Erstellen Sie eine Replikationsdomäne. Führen Sie die folgenden Schritte aus:
    1. Klicken Sie in der Administrationskonsole auf Umgebung > Replikationsdomänen > Neu.
    2. Geben Sie einen Namen ein, z. B. ABCDomain.
    3. Wählen Sie unter "Anzahl der Replikate" die Option Gesamte Domäne aus.
    4. Klicken Sie auf OK und Speichern, um die Konfiguration zu speichern.
  3. Aktivieren Sie den dynamischen Cache. Führen Sie die folgenden Schritte für jeden Server im Cluster aus:
    1. Klicken Sie in der Administrationskonsole auf Server > Servertypen > WebSphere-Anwendungsserver > Servername > Container-Services > Dynamischer Cache-Service.
    2. Wählen Sie die Option Cachereplikation aktivieren aus.
    3. Wählen Sie den Namen der Replikationsdomäne aus, die Sie erstellt haben, z. B. ABCDomain.
    4. Wählen Sie den Replikationstyp Push und Pull aus.
    5. Klicken Sie auf OK und Speichern, um die Konfiguration zu speichern.
  4. Optional: Ändern Sie das Intervall für die Aktualisierung des verteilten Caches. standardmäßig ist das Intervall für die Aktualisierung des verteilten Caches auf 1.000 Millisekunden gesetzt. Sie können dieses Intervall jedoch auf einen Wert unter 1.000 Millisekunde setzen. Führen Sie dazu für jeden Server im Cluster die folgenden Schritte aus:
    1. Klicken Sie in der Administrationskonsole auf Server > Servertypen > WebSphere-Anwendungsserver > Servername > Java- und Prozessverwaltung > Prozessdefinition > Java Virtual Machine > Angepasste Eigenschaften > Neu.
    2. Geben Sie den Eigenschaftsnamen com.ibm.ws.cache.CacheConfig.batchUpdateInterval ein.
    3. Geben Sie den Wert der Eigenschaft ein.
    4. Klicken Sie auf OK und Speichern, um die Konfiguration zu speichern.
  5. Installieren und konfigurieren Sie einen Web-Server oder Proxy-Server, der die Sitzungsaffinität unterstützt. Die Sitzungsaffinität wird von IBM® HTTP Server und vom Proxy-Server von WebSphere Application Server unterstützt. Lesen Sie den Artikel "Kommunikation mit Web-Servern" im Information Center von WebSphere Application Server, um mehr über die Installation und Konfiguration von IBM HTTP Server zu erfahren.
  6. Konfigurieren Sie die Clientsysteme so, dass die Web-Service-Anforderungen an die Host/Port-Kombination gesendet wird, unter der der Web-Server bzw. Proxy-Server ausgeführt wird. Der Web-Server bzw. Proxy-Server leitet die Anforderungen dann an das richtige Cluster-Member weiter.
  7. Wählen Sie für die Services, die die Web-Service-Anforderungen empfangen, die durch Web Services Secure Conversation geschützt sind, die Richtlinienoption "Sitzung aktiviert" für HTTP-Transporte aus. Gehen Sie zum Konfigurieren des Richtliniensatzes wie folgt vor:
    1. Fügen Sie dem Richtliniensatz, der von den Services verwendet wird, die HTTP-Transportrichtlinie hinzu.
    2. Wählen Sie in der Konfigurationsanzeige für die HTTP-Transportrichtlinie die Option Sitzung aktiviert aus.
    3. Klicken Sie auf OK und Speichern, um die Konfiguration zu speichern.
  8. Aktivieren Sie auf den Clientsystemen, die die Web-Service-Anforderungen senden und durch Secure Conversation geschützt sind, die HTTP-Transporteigenschaft "Maintain Session". Konfigurieren Sie den Richtliniensatz, oder setzen Sie die Eigenschaft über das Programm. Wenn Sie einen Richtliniensatz für Ihre Konfiguration verwenden, führen Sie die folgenden Schritte aus:
    1. Fügen Sie dem Richtliniensatz, der von den Clients verwendet wird, die HTTP-Transportrichtlinie hinzu.
    2. Wählen Sie in der Konfigurationsanzeige für die HTTP-Transportrichtlinie die Option Sitzung aktiviert aus.
    3. Klicken Sie auf OK und Speichern, um die Konfiguration zu speichern.

Ergebnisse

Nach Fertigstellung der Konfigurationen haben Sie den verteilten Cache und die Sitzungsaffinität bei Verwendung von Secure Conversation in einer Clusterumgebung aktiviert. Wenn der Server, der die Anforderung verarbeitet, keinen Zugriff auf das SCT hat, schlägt die Anforderung mit dem Fehler Either null SCT or invalid SCT fehl.

Beispiel

Das folgende Beispiel, ein Code-Snippet, veranschaulicht, wie die Eigenschaft "Maintain Session" über das Programm für das richtige JAX-WS-Objekt gesetzt wird:

Map<String> rc = ((BindingProvider) port).getRequestContext();
...
rc.put(BindingProvider.SESSION_MAINTAIN_PROPERTY, Boolean.TRUE);
... </String>

Symbol, das den Typ des Artikels anzeigt. Taskartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twbs_enablesecconvcluster
Dateiname:twbs_enablesecconvcluster.html