Die folgende Prozedur zeigt, wie
der WS-Security-Richtliniensatz und die zugehörigen Bindungen auf Nachrichtenebene
konfiguriert werden müssen, um ein LTPA-Token und/oder ein Benutzernamenstoken zu konsumieren.
Diese Prozedur kann so geändert werden, dass sie für jedes Paar aus ungleichen Tokenwerttypen gilt.
Es ist nicht möglich eine Konfiguration zu erstellen, mit der ein Token als erforderlich und das andere als optional definiert wird.
Vorbereitende Schritte
Diese Task setzt voraus,
dass der Service-Provider und der Service-Client, die Sie konfigurieren,
in der Anwendung JaxWSServicesSamples enthalten sind.
Weitere Informationen zum Abrufen und Installieren dieser Anwendung finden Sie unter
Auf die Beispiele zugreifen.
Sie sollten auf Ihrem Server die folgende Tracespezifikation verwenden.
Diese Spezifikationen unterstützen Sie bei der Behebung von Konfigurationsproblemen, die später eventuell auftreten können.
*=info:com.ibm.wsspi.wssecurity.*=all:com.ibm.ws.webservices.wssecurity.*=all:
com.ibm.ws.wssecurity.*=all: com.ibm.xml.soapsec.*=all: com.ibm.ws.webservices.trace.*=all:
com.ibm.ws.websvcs.trace.*=all:com.ibm.ws.wssecurity.platform.audit.*=off:
Weil LTPA-Token verwendet werden, muss auf den Anwendungsservern, die für den Client und den Service verwendet werden, die Anwendungssicherheit aktiviert sein.
Informationen zu diesem Vorgang
In dieser Prozedur werden die Aktionen erläutert, die Sie ausführen müssen, um einen
WS-Security-Richtliniensatz so zu konfigurieren, dass er
ein LTPA-Token und/oder ein Benutzernamenstoken konsumiert.
Normalerweise würden Sie diese Konfiguration auf einer Provideranwendung verwenden.
Aus Gründen der Vereinfachung wurden in dieser Prozedur die Zeitmarke, digitale Signatur und Verschlüsselung aus der Richtlinie entfernt.
Sie sollten diese in Ihre endgültige Konfiguration aufnehmen.
Weitere Informationen hierzu finden Sie im Artikel Richtliniensatz und Bindungen für asymmetrische digitale XML-Signatur und/oder Verschlüsselung konfigurieren.
Diese Prozedur umfasst auch die Schritte, die erforderlich sind,
um eine Clientanwendung so zu konfigurieren, dass sie ein Benutzernamenstoken oder ein LTPA-Token sendet.
Vorgehensweise
- Erstellen Sie den angepassten Richtliniensatz für den Provider.
- Klicken Sie in der Administrationskonsole auf Services > Richtliniensätze > Anwendungsrichtliniensätze.
- Klicken Sie auf Neu.
- Geben Sie "Name = AtwoTokenPolicy" an.
- Klicken Sie auf Anwenden.
- Klicken Sie unter Richtlinien auf Hinzufügen > WS-Security.
- Bearbeiten Sie den angepassten Richtliniensatz.
- Entfernen Sie die digitale Signatur, Verschlüsselung und Zeitmarke.
- Klicken Sie in der Administrationskonsole auf WS-Security > Hauptrichtlinie.
- Wählen Sie den Zugriffsschutz auf Nachrichtenebene ab.
- Klicken Sie auf Anwenden.
- Fügen Sie das Benutzernamenstoken (UsernameToken) und das LTPA-Token hinzu.
- Klicken Sie auf
Richtlinien für Anforderungstoken.
- Klicken Sie auf
Tokentyp hinzufügen > LTPA.
- Name des LTPA-Tokens: myLTPA
- Klicken Sie auf OK.
- Klicken Sie auf
Tokentyp hinzufügen > UserName.
- Name des Benutzernamenstokens: myUNT.
- Klicken Sie auf OK.
- Speichern Sie die Konfiguration.
- Klicken Sie auf Speichern.
- Konfigurieren Sie den Provider für die Verwendung des Richtliniensatzes AtwoTokenPolicy.
- Klicken Sie in der Administrationskonsole auf
Anwendungen
> Anwendungstypen > WebSphere-Unternehmensanwendungen > JaxWSServicesSamples
> Richtliniensätze und Bindungen für Service-Provider.
- Wählen Sie die Web-Service-Clientressource aus.
- Wählen Sie die Web-Service-Provider-Ressource aus.
- Klicken Sie auf Richtliniensatz zuordnen.
- Wählen Sie AtwoTokenPolicy aus.
- Erstellen Sie eine angepasste Bindung für den Provider.
- Wählen Sie die Web-Service-Provider-Ressource erneut aus.
- Klicken Sie auf Bindung zuweisen.
- Klicken Sie auf Neue anwendungsspezifische Bindung, um eine anwendungsspezifische
Bindung zu erstellen.
- Geben Sie "Name der Bindungskonfiguration:providerBinding" an.
- Klicken Sie auf Hinzufügen > WS-Security.
- Bearbeiten Sie die angepassten Bindungen für den Provider.
- Gehen Sie wie folgt vor, um eine Caller-Konfiguration für das LTPA-Token hinzuzufügen:
- Klicken Sie auf Caller.
- Klicken Sie auf Neu.
- Name: ltpaCaller
- Lokaler Abschnitt der Caller-Identität: LTPAv2
- Namespace-URI der Caller-Identität: http://www.ibm.com/websphere/appserver/tokentype
- Klicken Sie auf OK.
- Gehen Sie wie folgt vor, um eine Caller-Konfiguration für das Benutzernamenstoken hinzuzufügen:
- Klicken Sie auf Neu.
- Name: untCaller
- Lokaler Abschnitt der Caller-Identität: http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#UsernameToken
- Namespace-URI der Caller-Identität: [leer lassen]
- Klicken Sie auf OK.
Anmerkung: Vergewissern Sie sich, dass die Token die gewünschte Rangfolge haben.
Für einen Thread kann nur eine Caller-Identität vorhanden sein.
Wenn in der eingehenden SOAP-Nachricht, für die Caller-Konfigurationen existieren, mehrere Token sind,
wird die Caller-Konfiguration mit der niedrigeren Folgenummer verwendet.
Wenn eine andere Reihenfolge gewünscht wird als im Feld "Reihenfolge" der Tabelle angezeigt, gehen Sie wie folgt vor:
- Wählen Sie das Token aus, das die höchste Priorität erhalten soll.
- Klicken Sie so lange auf "Nach oben", bis als "Reihenfolge" die Zahl 1 angezeigt wird.
- Wiederholen Sie diese Vorgehensweise, indem Sie so lange auf "Nach oben" und "Nach unten" klicken, bis die gewünschte Reihenfolge festgelegt ist.
- Klicken Sie auf Speichern, um die Konfiguration zu speichern.
- Erstellen Sie einen Richtliniensatz, der nur ein Benutzernamenstoken in der Anforderungsnachricht für den Client enthält.
- Klicken Sie in der Administrationskonsole auf Services > Richtliniensätze > Anwendungsrichtliniensätze.
- Klicken Sie auf Neu.
- Geben Sie "Name = AUntPolicy" an.
- Klicken Sie auf Anwenden.
- Klicken Sie unter Richtlinien auf Hinzufügen > WS-Security.
- Entfernen Sie die digitale Signatur, Verschlüsselung und Zeitmarke.
Führen Sie in der Administrationskonsole die folgenden Schritte aus:
- Klicken Sie auf WS-Security > Hauptrichtlinie.
- Wählen Sie den Zugriffsschutz auf Nachrichtenebene ab.
- Klicken Sie auf Anwenden.
- Fügen Sie das Benutzernamenstoken hinzu.
- Klicken Sie auf
Richtlinien für Anforderungstoken.
- Klicken Sie auf
Tokentyp hinzufügen > UserName.
- Name des Benutzernamenstokens: myUNT.
- Klicken Sie auf OK.
- Speichern Sie die Konfiguration.
Klicken Sie auf Speichern.
- Erstellen Sie einen Richtliniensatz, der nur ein LTPA-Token in der Anforderungsnachricht für den Client enthält.
- Klicken Sie in der Administrationskonsole auf Services > Richtliniensätze > Anwendungsrichtliniensätze.
- Klicken Sie auf Neu.
- Geben Sie "Name = AnLTPAPolicy" an.
- Klicken Sie auf Anwenden.
- Klicken Sie unter Richtlinien auf Hinzufügen > WS-Security.
- Entfernen Sie die digitale Signatur, Verschlüsselung und Zeitmarke.
Führen Sie in der Administrationskonsole die folgenden Schritte aus:
- Klicken Sie auf WS-Security > Hauptrichtlinie.
- Wählen Sie den Zugriffsschutz auf Nachrichtenebene ab.
- Klicken Sie auf Anwenden.
- Fügen Sie das LTPA-Token hinzu.
- Klicken Sie auf
Richtlinien für Anforderungstoken.
- Klicken Sie auf
Tokentyp hinzufügen > LTPA.
- Name des LTPA-Tokens: myLTPA.
- Klicken Sie auf OK.
- Speichern Sie die Konfiguration.
Klicken Sie auf Speichern.
- Führen Sie die folgenden Schritte aus, um den Client für die Verwendung der Richtlinie für Benutzernamenstoken (UsernameToken) zu konfigurieren und Bindungen zu erstellen:
- Konfigurieren Sie
den Client für die Verwendung des Richtliniensatzes AUntPolicy.
- Klicken Sie in der Administrationskonsole auf Anwendungen > Anwendungstypen > WebSphere-Unternehmensanwendungen >JaxWSServicesSamples>
Richtliniensätze und Bindungen für Service-Clients.
- Wählen Sie die Web-Service-Client-Ressource aus.
- Klicken Sie auf Richtliniensatz zuordnen.
- Wählen Sie AUntPolicy aus.
- Erstellen Sie eine angepasste Bindung für den Client.
- Wählen Sie die Web-Service-Ressource erneut aus.
- Klicken Sie auf Bindung zuweisen.
- Klicken Sie auf
Neue anwendungsspezifische Bindung, um eine anwendungsspezifische Bindung zu erstellen.
- Geben Sie den Bindungskonfigurationsnamen an. Name: untClientBinding.
- Klicken Sie auf Hinzufügen > WS-Security.
- Konfigurieren Sie die angepassten Bindungen für den Client.
- Wählen Sie Authentifizierung und Zugriffsschutz aus.
- Wählen Sie unter Authentifizierungstoken den Eintrag
myUNT aus.
- Klicken Sie auf Anwenden.
- Klicken Sie auf Callback-Handler.
- Geben Sie den gewünschten Benutzernamen und das gewünschte Kennwort ein.
- Fügen Sie die angepassten
Eigenschaften für Nonce und Zeitmarke hinzu. Weil der Konsument des Benutzernamenstokens während der Konfiguration der angepassten Bindung auf dem Provider
nicht konfiguriert wurde, verwendet die Laufzeit die allgemeinen Standardbindungen für die Konfiguration des Benutzernamenstokens.
Der Konsument des Benutzernamenstokens in den allgemeinen Standardbindungen erfordert, dass die Zeitmarke und Noce
im Benutzernamenstoken definiert sind. Daher müssen die Eigenschaften eingegeben werden, die diese Elemente ausgeben:
* com.ibm.wsspi.wssecurity.token.username.addTimestamp=true
* com.ibm.wsspi.wssecurity.token.username.addNonce=true
- Klicken Sie auf OK.
- Speichern Sie die Konfiguration.
- Klicken Sie auf Speichern.
- Führen Sie die folgenden Schritte aus, um den Client für die Verwendung der Richtlinie für Benutzernamenstoken (UsernameToken) zu konfigurieren und Bindungen zu erstellen:
- Konfigurieren Sie den Client für
die Verwendung des Satzes
AnLTPAPolicypolicy.
- Klicken Sie in der Administrationskonsole auf Anwendungen > Anwendungstypen > WebSphere-Unternehmensanwendungen >JaxWSServicesSamples>
Richtliniensätze und Bindungen für Service-Clients.
- Wählen Sie die Web-Service-Client-Ressource aus.
- Klicken Sie auf Richtliniensatz zuordnen.
- Wählen Sie AnLTPAPolicy aus.
- Erstellen Sie eine angepasste Bindung für den Client.
- Wählen Sie die Web-Service-Ressource erneut aus.
- Klicken Sie auf Bindung zuweisen.
- Klicken Sie auf
Neue anwendungsspezifische Bindung, um eine anwendungsspezifische Bindung zu erstellen.
- Geben Sie den Bindungskonfigurationsnamen an. Name: ltpaClientBinding.
- Klicken Sie auf Hinzufügen > WS-Security.
- Konfigurieren Sie die angepassten Bindungen für den Client.
- Wählen Sie Authentifizierung und Zugriffsschutz aus.
- Wählen Sie unter Authentifizierungstoken den Eintrag
myLTPA aus.
- Klicken Sie auf Anwenden.
- Klicken Sie auf Callback-Handler.
- Geben Sie den gewünschten Benutzernamen und das gewünschte Kennwort ein.
- Klicken Sie auf OK.
- Speichern Sie die Konfiguration.
- Klicken Sie auf Speichern.