Entschlüsselte Abschnitte mit der Anwendungsprogrammierschnittstelle "WSSDecryptPart" hinzufügen

Sie können die SOAP-Nachrichten ohne Verwendung von Richtliniensätzen für die Konfiguration sichern, indem Sie die Anwendungsprogrammierschnittstellen (API, Application Programming Interface) von Web Services Security (WSS-API) verwenden. Wenn Sie die verschlüsselten Abschnitte für die Antwortkonsumentenbindungen (Clientseite) konfigurieren möchten, verwenden Sie die API "WSSDecryptPart", um die verschlüsselten Abschnitte zu definieren und der Liste der Elemente in WSSDecryptPart hinzuzufügen. WSSDecryptPart ist eine Schnittstelle, die zum Paket "com.ibm.websphere.wssecurity.wssapi.decryption" gehört.

Vorbereitende Schritte

Zum Konfigurieren und Hinzufügen neuer verschlüsselter Abschnitte können Sie die WSS-APIs verwenden oder die Richtliniensätze in der Administrationskonsole konfigurieren. Wenn Sie SOAP-Nachrichten mit der API WSSDecryptPart sichern möchten, müssen Sie die verschlüsselten Abschnitte für die Antwortkonsumentenbindungen konfigurieren.

Informationen zu diesem Vorgang

Vertraulichkeitseinstellungen erfordern, dass Vertraulichkeitsbedingungen auf generierte Nachrichten angewendet werden. Zu diesen Bedingungen gehört auch anzugeben, welche Nachrichtenabschnitte in der generierten Nachricht verschlüsselt und entschlüsselt und welchen Nachrichtenabschnitten verschlüsselte Elemente zugeordnet werden sollen.

Die API "WSSDecryptPart" gibt Informationen an, die sich auf die Entschlüsselung beziehen, und legt die entschlüsselten Abschnitte fest, die für den Schutz der Nachrichtenvertraulichkeit hinzugefügt wurden. Verwenden Sie WSSDecryptPart, um die Umsetzungsmethode und den Abschnitt anzugeben, auf den die Umsetzungsmethode angewendet werden soll. Definieren Sie die Umsetzungsmethode nur, wenn Sie SOAP with Attachments verwenden. WSSDecryptPart wird gewöhnlich nur in einigen Fällen für Tasks, wie z. B. das Festlegen der Umsetzungsmethode, benötigt.

Die in der folgenden Tabelle gezeigten entschlüsselten Abschnitte werden verwendet, um die Vertraulichkeit von Nachrichten zu schützen.

Tabelle 1. Entschlüsselte Abschnitte. Verwenden Sie die entschlüsselten Abschnitte, um Nachrichten zu sichern.
Entschlüsselte Abschnitte Beschreibung
keyword

Legt den entschlüsselten Abschnitt mit Schlüsselwörtern fest. Standardmäßig können Sie mit Schlüsselwörtern die entschlüsselten Abschnitte BODY_CONTENT und SIGNATURE hinzufügen. WebSphere Application Server unterstützt die folgenden Schlüsselwörter:

  • BODY_CONTENT
  • SIGNATURE
  • USERNAME_TOKEN
xpath Legt den entschlüsselten Abschnitt mit einem XPath-Ausdruck fest.
verification Legt die WSSVerification-Komponente als entschlüsselten Abschnitt fest.

Der WSSVerification-Abschnitt ist nur gültig, wenn die SOAP-Nachricht ein Signaturelement enthält.

header Legt den mit QName angegebenen Header als entschlüsselten Abschnitt fest.

Bei entschlüsselten Abschnitten sind bestimmte Standardverhalten zu beobachten. Die API "WSSDecryptPart" lässt sich am einfachsten über den Einsatz des Standardverhaltens verwenden (siehe Beispielcode).

WSSDecryptPart stellt Standardeinstellungen für das Festlegen des Umsetzungsalgorithmus, das Hinzufügen einer Umsetzungsmethode, das Festlegen von Objekten als Ziele sowie die Angabe von Elementen und verschlüsselten Abschnitten, wie z. B. Inhalt des SOAP-Hauptteils und Signatur, bereit.

Tabelle 2. Entscheidungen bzgl. entschlüsselter Abschnitte. Verschiedene Kenndaten von zu entschlüsselten Abschnitten werden standardmäßig konfiguriert.
Entscheidungen bzgl. der Entschlüsselung Standardverhalten
Mit Schlüsselwörtern zu entschlüsselnde SOAP-Nachrichtenabschnitte

Gibt an, welche Schlüsselwörter für die verschlüsselten Abschnitte verwendet werden sollen. WebSphere Application Server legt standardmäßig die folgenden SOAP-Nachrichtenabschnitte für die Entschlüsselung fest:

  • WSSDecryption.BODY_CONTENT
  • WSSDecryption.SIGNATURE
Zu verwendender Umsetzungsalgorithmus

WebSphere Application Server gibt standardmäßig keinen Umsetzungsalgorithmus an. Geben Sie nur dann eine Umsetzungsmethode an, wenn Sie SOAP with Attachments verwenden.

Vorgehensweise

  1. Zum Entschlüsseln der SOAP-Nachrichtenabschnitte mit der API "WSSDecryptPart" müssen Sie zuerst sicherstellen, dass der Anwendungsserver installiert ist.
  2. Der WSS-API-Prozess teilt sich in die folgenden Schritte auf:
    1. Mit WSSFactory.getInstance() die Instanz der WSS-API-Implementierung abrufen.
    2. WSSConsumingContext-Instanz aus der WSSFactory-Instanz erstellen. In einer JAX-WS-Clientanwendung muss immer WSSConsumingContext aufgerufen werden.
    3. SecurityToken aus WSSFactory erstellen, um die Entschlüsselung zu konfigurieren
    4. Mit dem SecurityToken WSSDecryption aus der WSSFactory-Instanz erstellen.
    5. WSSDecryptPart aus der WSSFactory-Instanz erstellen. Standardmäßig geht WSSDecryptPart davon aus, dass der Hautteilinhalt und die Signatur verschlüsselt sind.
    6. Zu entschlüsselnden und anzuwendenden Abschnitte mit der Umsetzung in WSSDecryptPart hinzufügen. WebSphere Application Server legt diese verschlüsselten Abschnitte standardmäßig für WSSDecryptPart fest: BODY_CONTENT und SIGNATURE. Nach dem Hinzufügen weiterer entschlüsselter Abschnitte sind die Standardwerte nicht mehr gültig. Wenn Sie beispielsweise addDecryptPart(securityToken, false) aufrufen, wird nur das Sicherheitstoken verschlüsselt. Signatur und Inhalt des Hauptteils werden nicht verschlüsselt. Wenn Sie das Sicherheitstoken, die Signatur und den Inhalt des Hauptteils entschlüsseln möchten, müssen Sie addDecryptPart(securityToken, false), addDecryptPart(WSSDecryption.SIGNATURE) und addDecryptPart(WSSDecryption.BODY_CONTENT) aufrufen.
    7. Umsetzungsmethode festlegen.
    8. WSSDecryptPart zu WSSDecryption hinzufügen.
    9. WSSDecryption zu WSSConsumingContext hinzufügen.
    10. WSSConsumingContext.process() mit dem SOAPMessageContext aufrufen.

Ergebnisse

Wenn beim Entschlüsseln der Nachricht eine Fehlerbedingung eintritt, wird eine Ausnahme vom Typ WSSException ausgelöst. Bei erfolgreicher Ausführung wird WSSConsumingContext.process() von der API aufgerufen, der WS-Security-Header generiert und die SOAP-Nachricht damit über Web services Security gesichert.

Nächste Schritte

Geben Sie nach dem Aktivieren der entschlüsselten Abschnitte für die Antwortkonsumentenbindungen (Clientseite) die Generator- und Konsumententoken an, wenn die Sicherheitstoken noch nicht angegeben wurden.


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_confwssdecryptsecretkey
Dateiname:twbs_confwssdecryptsecretkey.html