Entschlüsselung zum Schutz der Nachrichtenvertraulichkeit mit den WSS-Anwendungsprogrammierschnittstellen konfigurieren
Sie können Entschlüsselungsdaten für den Abschnitt mit dem Antwortkonsumenten (Clientseite) in der Bindungsdatei konfigurieren. Mit Verschlüsselungsdaten wird angegeben, wie die Konsumenten (Empfänger) eingehende SOAP-Nachrichten entschlüsseln. Zum Konfigurieren der Entschlüsselung geben Sie die Nachrichtenabschnitte, die entschlüsselt werden sollen, und die Algorithmusmethoden und Sicherheitstoken an, die für die Entschlüsselung verwendet werden sollen.
Vorbereitende Schritte
Vertraulichkeit bezieht sich auf Verschlüsselung, wohingegen sich Integrität auf digitale Signatur bezieht. Die Vertraulichkeit verringert das Risiko, dass jemand die Nachricht während des Transports durch das Internet verstehen kann. Wenn Angaben zur Vertraulichkeit gemacht wurden, wird die Nachricht vor dem Senden verschlüsselt und erst nach dem fehlerfreien Empfang am Ziel entschlüsselt. Machen Sie sich vor dem Konfigurieren der Entschlüsselung mit der XML-Verschlüsselung vertraut.
Informationen zu diesem Vorgang
Für die Entschlüsselung müssen Sie Folgendes angeben:
- zu entschlüsselnde Abschnitte der Nachricht,
- anzugebende Entschlüsselungsalgorithmen.
Verwenden Sie zum Konfigurieren der Entschlüsselung und der entschlüsselten Abschnitte auf der Clientseite die Anwendungsprogrammierschnittstellen "WSSDecryption" und "WSSDecryptPart", oder konfigurieren Sie über die Administrationskonsole Richtliniensätze.
WebSphere Application Server stellt Standardwerte für Bindungen bereit. Diese Standardwerte müssen jedoch vom Systemadministrator für die Produktionsumgebung geändert werden.
WebSphere Application Server verwendet Entschlüsselungsdaten für den Standardkonsumenten, um Abschnitte der SOAP-Nachricht zu entschlüsseln. Die Anwendungsprogrammierschnittstelle "WSSDecryption" konfiguriert die folgenden erforderlichen Abschnitte als entschlüsselte Abschnitte.
Entschlüsselungsabschnitte | Beschreibung |
---|---|
Schlüsselwörter | Es werden Schlüsselwörter verwendet, um die entschlüsselten Abschnitte zur SOAP-Nachricht hinzuzufügen. |
XPath-Ausdruck | Es wird ein XPath-Ausdruck verwendet, um die entschlüsselten Abschnitte zur SOAP-Nachricht hinzuzufügen. |
Objekt WSSDencryptPart | Dieses Objekt fügt die entschlüsselten Abschnitte zur SOAP-Nachricht hinzu. |
Objekt WSSVerification | Dieses Objekt fügt die Signaturprüfkomponente als entschlüsselten Abschnitt hinzu. |
Header | Dieser Abschnitt fügt den mit dem QName angegebenen Header im SOAP-Header als entschlüsselten Abschnitt hinzu. |
Sicherheitstokenobjekt | Dieses Objekt fügt das Sicherheitstoken als entschlüsselten Abschnitt hinzu. |
Die API von Web Services Security (WSS-API) unterstützt symmetrische Verschlüsselung über die Verwendung eines gemeinsam genutzten Schlüssels nur, wenn Web Services Secure Conversation (WS-SecureConversation) verwendet wird.
Die WSS-Anwendungsprogrammierschnittstellen lassen die Verwendung von Schlüsselwörtern und XPath-Ausdrücken für die Angabe der zu entschlüsselnden SOAP-Nachrichtenabschnitte zu. WebSphere Application Server unterstützt die Verwendung der folgenden Schlüsselwörter:
Schlüsselwort | Referenzen |
---|---|
BODY_CONTENT | Das Schlüsselwort für den Inhalt des SOAP-Nachrichtenhauptteils als Entschlüsselungsziel. |
SIGNATURE | Das Schlüsselwort für das Signaturelement als Entschlüsselungsziel. |
USERNAME_TOKEN, | Das Schlüsselwort für das Benutzernamenstokenelement als Entschlüsselungsziel. |
Wenn Sie die Konfiguration mit den WSS-Anwendungsprogrammierschnittstellen durchführen, führen die Anwendungsprogrammierschnittstellen "WSSDecryption" und "WSSDecryptPart" die folgenden übergeordneten Schritte aus:
Vorgehensweise
Ergebnisse
Beispiel
WSSFactory factory = WSSFactory.getInstance();
WSSConsumingContext concont = factory.newWSSConsumingContext();
X509ConsumeCallbackHandler callbackhandler = generateCallbackHandler();
// siehe X509ConsumeCallbackHandler
WSSDecryption dec = factory.newWSSDecryption(X509Token.class,
callbackhandler);
concont.add(dec);
Nächste Schritte
Sie müssen ähnliche Verschlüsselungsdaten für die clientseitigen Anforderungsgeneratorbindungen (Sender) konfigurieren, falls diese Daten noch nicht konfiguriert wurden.
Sehen Sie sich als Nächstes den Prozess der Anwendungsprogrammierschnittstelle "WSSDecryption" an.