Die folgende Prozedur zeigt, wie
der WS-Security-Richtliniensatz und die zugehörigen Bindungen auf Nachrichtenebene
konfiguriert werden müssen, um eine SOAP-Nachricht, die einen angepassten Richtliniensatz und Standardbindungen verwendet, zu signieren und zu verschlüsseln. Die Informationen in diesem Abschnitt sollen Sie damit vertraut machen,
wie WS-Security-Integritätsbedingungen einer JAX-WS-Anwendung hinzugefügt werden.
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 dazu, wie Sie die Anwendung erhalten und installieren, finden Sie im Artikel "Auf Beispiele zugreifen".
Verwenden Sie
auf Ihrem Server die folgende Tracespezifikation.
Sie können alle zukünftigen Konfigurationsprobleme, die sich aus der Nutzung dieser Spezifikationen ergeben können, beheben.
*=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:
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 die WS-Security-Integritätsbedingungen für die
asymmetrische digitale XML-Signatur und -Verschlüsselung verwendet. Da Sie in dieser Prozedur keine Bindungen zuordnen, werden die Standardbindungen
sowohl für den Client als auch den Provider verwendet.
Um den Richtliniensatz und die Bindungen auf diese Anwendung anzuwenden, klicken Sie in der Administrationskonsole auf
Anwendungen >
Anwendungstypen >
WebSphere-Unternehmensanwendungen >
JaxWSServicesSamples.
Wenn Sie Ihre eigenen Anwendungen verwenden, können Sie alternativ die folgenden Pfade verwenden,
um zwecks Zuordnung des Richtliniensatzes und der Bindungen auf Provider und Client zuzugreifen:
- Services > Service-Provider >
Anwendungsname
- Services > Service-Clients >
Anwendungsname
Vorgehensweise
- Erstellen Sie den angepassten Richtliniensatz.
- Klicken Sie in der Administrationskonsole auf Services >
Richtliniensätze > Anwendungsrichtliniensätze.
- Klicken Sie auf Neu.
- Geben Sie Name=SimpleSignEncPolicy an.
- Klicken Sie auf Anwenden.
- Klicken Sie unter Richtlinien auf Hinzufügen WS-Security.
Die Richtlinie weist jetzt standardmäßig die folgende Konfiguration auf:
- Die Zeitmarke (Timestamp) wird in abgehenden Nachrichten gesendet.
- Die Zeitmarke ist in ankommenden Nachrichten erforderlich.
- Die Anforderung und die Antwort (Hauptteil, WS-Addressing-Header und Zeitmarke) werden signiert.
- Die Anforderung und die Antwort (Hauptteil und Signaturelement im SOAP-Sicherheitsheader) werden verschlüsselt.
- Klicken Sie auf Speichern, um die Konfigurationsänderungen zu speichern.
- Konfigurieren Sie den Client für die Verwendung des Richtliniensatzes
SimpleSignEncPolicy.
- 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-Clientressource (JaxWSServicesSamples) aus.
- Klicken Sie auf Richtliniensatz zuordnen.
- Wählen Sie SimpleSignEncPolicy aus.
- Konfigurieren Sie den Provider für die Verwendung des Richtliniensatzes
SimpleSignEncPolicy.
- 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-Provider-Ressource (JaxWSServicesSamples) aus.
- Klicken Sie auf Richtliniensatz zuordnen.
- Wählen Sie SimpleSignEncPolicy aus.
- Klicken Sie auf Speichern, um die Konfigurationsänderungen zu speichern.
- Starten Sie den Client und den Provider erneut.
- Stoppen Sie den Client und den Provider.
- Starten Sie den Client und den Provider erneut.
- Testen Sie den Service.
- Rufen Sie in Ihrem Web-Browser JAXWSServicesSamples auf, indem Sie die folgende URL eingeben: http://localhost:9080/wssamplesei/demo.
Fehler vermeiden: Achten Sie darauf, den richtigen Hostnamen und Port anzugeben,
falls sich Ihr Provider nicht auf derselben Maschine befindet oder ein anderer Port als 9080 verwendet wird.
gotcha
- Wählen Sie Message Type Synchronous Echo aus.
- Stellen Sie sicher, dass Use SOAP 1.2 nicht ausgewählt ist.
- Geben Sie eine Nachricht ein, und klicken Sie auf
Send Message.
Die Beispielanwendung sollte die Antwort JAXWS==>Message zurückgeben.
Ergebnisse
Die Web-Service-Anwendung JaxWSServicesSamples ist so konfiguriert, dass sie die SOAP-Anforderungen und -Antworten, die
allgemeine Standardbindungen für den Client und den Provider verwenden, mit asymmetrischer digitaler
XML-Signatur und -Verschlüsselung schützt.
Nächste Schritte
Nach Abschluss der Task können Sie mit weiteren Konfigurationen fortfahren:
- Richtliniensatz und Bindungen für die asymmetrische digitale XML-Signatur und/oder XML-Verschlüsselung mit allgemeinen Client- und Providerbindungen konfigurieren
- Richtliniensatz und Bindungen für die asymmetrische digitale XML-Signatur und/oder XML-Verschlüsselung mit anwendungsspezifischen Bindungen für Client und Provider konfigurieren
- Richtliniensatz und Bindungen für die digitale XML-Signatur mit
client- und providerspezifischen Bindungen konfigurieren