Sichere Dialoge aktivieren

Verwenden Sie sichere Dialoge (Secure Conversation), um die Nachrichten von Web-Service-Anwendungen zu sichern.

Vorbereitende Schritte

Anwendungen, die Web-Services enthalten, müssen implementiert sein.

Informationen zu diesem Vorgang

Die OASIS-Entwurfsspezifikation (Organization for the Advancement of Structured Information Standards) "Web Services Secure Conversation (WS-SecureConversation)" beschreibt Methoden, um eine sichere Sitzung zwischen dem Initiator und dem Empfänger von SOAP-Nachrichten einzurichten. Die Entwurfsspezifikation WS-SecureConversation definiert auch, wie das OASIS-Protokoll "Web Services Trust" (WS-Trust) verwendet wird, um ein Sicherheitskontexttoken (SCT, Security Context Token) zu konfigurieren. Vollständige Informationen finden Sie in der OASIS-Spezifikation "Web Services Secure Conversation".

WebSphere Application Server unterstützt die Fähigkeit eines Endpunkts, ein Sicherheitskontexttoken für WS-SecureConversation auszustellen und damit eine sichere Sitzung zwischen dem Initiator und dem Empfänger von SOAP-Nachrichten einzurichten.

Die folgende Abbildung veranschaulicht den Ablauf, der erforderlich ist, um einen gesicherten Kontext einzurichten und sitzungsbasierte Sicherheit zu verwenden.

Abbildung 1. Ablauf zwischen dem Client und dem Web-Service und dem SicherheitstokenserviceAblauf zwischen dem Client, dem Sicherheitstokenservice und dem Web-Service
Gewöhnlich muss zur Verwendung sicherer Dialoge (Secure Conversation) die folgenden Schritte ausgeführt werden:
  1. Der Client sendet eine RST-Trust-Anforderung (RequestSecurityToken) für ein Sicherheitskontexttoken mit seinem geheimen Schlüssel an einen Anwendungsendpunkt (Entropie und Zielschlüsselgröße) und fordert den geheimen Schlüssel des Zielservice an.

    Diese Anforderung wird gewöhnlich über asymmetrische Web Services Security gesichert, die in der Bootstraprichtlinie definiert ist.

  2. Die RST-Anforderung wird vom Trust-Service verarbeitet. Wenn die Anforderung, basierend auf der Sicherheitsrichtlinie anerkannt wird, gibt der Trust-Service das Sicherheitskontexttoken mit dem geheimen Schlüssel des Zielservice über eine WS-Trust RequestSecurityTokenResponse (RSTR) zurück.

    Diese Anforderung wird gewöhnlich über asymmetrische Web Services Security gesichert. Der Client prüft, basierend auf der Bootstraprichtlinie, ob die RSTR vertrauenswürdig ist.

  3. Wenn die RequestSecurityTokenResponse vertrauenswürdig ist, sichert (signiert und verschlüsselt) der Client die nachfolgenden Anwendungsnachrichten mit den Sitzungsschlüsseln.

    Die Sitzungsschlüssel werden aus dem geheimen Schlüssel des Sicherheitskontexttokens abgeleitet, das über die ersten WS-Trust-RequestSecurityToken- und -RequestSecurityTokenResponse-Nachrichten angefordert wurde, die zwischen dem Initiator und dem Empfänger ausgetauscht wurden.

  4. Die Spezifikation definiert einen Algorithmus für die Ableitung der Schlüssel auf der Basis des anfänglichen geheimen Schlüssels. Der Ziel-Web-Service berechnet den abgeleiteten Schlüssel aus den Metadaten, die im Sicherheitsheader der SOAP-Nachrichten enthalten sind, und dem anfänglichen geheimen Schlüssel.
  5. Der Ziel-Web-Service verwendet den abgeleiteten Schlüssel, um die Nachricht, basierend auf der Anwendungssicherheitsrichtlinie, zu prüfen und zu entschlüsseln.
  6. Der Ziel-Web-Service verwendet den aus dem geheimen Schlüssel abgeleiteten Schlüssel, um die Antwort, basierend auf der Anwendungssicherheitsrichtlinie, zu signieren und zu verschlüsseln.
  7. Die Schritte 3 bis 6 werden so lange wiederholt, bis der Nachrichtenaustausch abgeschlossen ist.

In der Spezifikation WS-SecureConversation wird ein Sicherheitskontext durch das Sicherheitstoken <wsc:SecurityContextToken> dargestellt. Das folgende Beispiel veranschaulicht die Zusicherungssyntax für ein Element <wsc:SecurityContextToken>.

<wsc:SecurityContextToken wsu:Id="..." ...>
    <wsc:Identifier>...</wsc:Identifier>
    <wsc:Instance>...</wsc:Instance>
    ...
</wsc:SecurityContextToken>

Das Sicherheitskontexttoken unterstützt keine Referenzen über Schlüssel-IDs oder Schlüsselnamen. Alle Referenzen müssen entweder eine ID (für ein Attribut "wsu:Id") oder ein Element <wsse:Reference> für das Element <wsc:Identifier> verwenden.

WebSphere Application Server stellt die folgenden vorkonfigurierten Richtlinien für sichere Dialoge bereit:

  • Der Richtliniensatz SecureConveration folgt den Spezifikationen WS-SecureConversation und WS-Security. In diesem Richtliniensatz sind sichere Dialoge aktiviert, und es werden Schlüssel verwendet, die vom Sicherheitskontexttoken abgeleitet werden und die für die Signatur und Verschlüsselung der Anwendungsnachrichten verwendet werden.
  • Der Richtliniensatz Username SecureConversation folgt den Spezifikationen WS-SecureConversation und WS-Security und fügt die Authentifizierung über das Benutzernamenstoken hinzu.
  • Der Richtliniensatz LTPA SecureConversation folgt den Spezifikationen WS-SecureConversation und WS-Security und unterstützt die Authentifizierung über LTPA-Token (Lightweight Third Party Authentication).

In diesem Beispiel werden der Standardrichtliniensatz SecureConversation sowie die WS-Security-Standardbindung und die Bindung TrustServiceSecurityDefault verwendet, um sichere Dialoge zu aktivieren. Der SecureConversation-Standardrichtliniensatz enthält die Anwendungsrichtlinie (symmetricBinding) und die Bootstraprichtlinie (asymmetricBinding). Die Anwendungsrichtlinie wird verwendet, um Anwendungsnachrichten zu sichern, und die Bootstraprichtlinie wird verwendet, um die RequestSecurityToken-Nachrichten (RST) zu sichern.

Ein Trust-Service, der ein Sicherheitskontexttoken ausstellt, ist mit der Systemrichtlinie TrustServiceSecurityDefault und der Bindung TrustServiceSecurityDefault konfiguriert. Die Trust-Richtlinie ist für die Sicherung der RequestSecurityTokenResponse-Nachrichten (RSTR) verantwortlich. Wenn die Bootstraprichtlinie geändert wird, muss die Trust-Richtlinie so geändert werden, dass sie beiden Konfigurationen entspricht.

Anmerkung: Die folgenden Schritte dürfen nur in Entwicklungs- und Testumgebungen ausgeführt werden.

Die WS-Security-Standardbindungen (Web Services Security), die hier verwendet werden, enthalten Beispielschlüsseldateien und müssen vor der Verwendung in einer Produktionsumgebung angepasst werden. Für die Produktionsumgebung wird die Verwendung angepasster Bindungen angeraten. Beachten Sie außerdem, das die Schritt 2 und 3 übersprungen werden können, wenn das Profil mit der Option Server mit einer Entwicklungsschablone erstellen erstellt wird.

Führen Sie die folgenden Schritte aus, um sichere Dialoge zu konfigurieren, den Richtliniensatz zu konfigurieren und der Richtlinie eine Richtlinienzusicherung hinzuzufügen:

Vorgehensweise

  1. Erstellen Sie eine Kopie der Standardrichtlinie für sichere Dialoge, damit Sie den Richtliniensatz für Ihre Umgebung anpassen können.
    1. Starten Sie die Administrationskonsole, und klicken Sie auf Services > Richtliniensätze > Anwendungsrichtliniensätze.
    2. Wählen Sie das Kontrollkästchen eines vorhandenen Richtliniensatzes aus, der den WS-SecureConversation-Spezifikationen folgt. Sie können beispielsweise auf das Kontrollkästchen für SecureConversation klicken. Dieser Richtliniensatz ist einer der vorkonfigurierten Anwendungsrichtliniensätze für sichere Dialoge, der in der Tabelle aufgelistet ist. Der Richtliniensatz SecureConversation hat eine Bootstraprichtlinie für den Standardrichtliniensatz, damit der Trust-Service Token ausstellen und erneuern kann.
    3. Klicken Sie auf Kopieren.
    4. Geben Sie einen eindeutigen Namen für die neue Kopie des Anwendungsrichtliniensatzes SecureConversation ein. Beispiel: CopyOfSCPolicySet
    5. Optional: Ändern Sie die bei Bedarf die Beschreibung für Ihre angepasste Version dieses Richtliniensatzes.
  2. Ordnen Sie der Anwendung den Richtliniensatz und die Bindung zu.
    1. Klicken Sie auf Anwendungen > Anwendungstypen > WebSphere-Unternehmensanwendungen > Anwendungsname.
    2. Klicken Sie auf Richtliniensätze und Bindungen für Service-Provider oder auf Richtliniensätze und Bindungen für Service-Clients, um dem Richtliniensatz "CopyOfSCPolicySet" Ressourcen zuzuordnen. Die allgemeine Bindung wird automatisch als Standardbindung zugeordnet.
    3. Sie können die Menülisten Richtliniensatz zuordnen und Bindung zuweisen verwenden, um einen anderen Richtliniensatz bzw. eine andere Bindung aufzulisten.

Ergebnisse

Nachdem Sie diese Schritte ausgeführt haben, sind die sicheren Dialoge konfiguriert.

Nächste Schritte

Sehen Sie sich als Nächstes das Beispielszenario zum Erstellen eines Sicherheitskontexttokens zum Sichern eines sicheren Dialogs an.


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_enablesecureconv
Dateiname:twbs_enablesecureconv.html