WS-Security mit Apache WSS4J

Stille Post

Andy Wolf

Ausgefeilte Sicherheitsmechanismen sind bei jeder Kommunikationstechnik von großer Bedeutung. Absender und Empfänger von Nachrichten verlassen sich auf die Sicherheit der Übertragung. Bei Web Services gilt das ganz besonders, da diese Technik ihre Stärke gerade im unternehmensübergreifenden Bereich besitzt. Dort soll oft aus Kosten- und Flexibilitätsgründen das öffentliche Internet und damit ein unsicheres Medium genutzt werden. Der folgende Artikel beschreibt Apache WSS4J, eine freie Implementierung der OASIS Web Services Security v1.0 Spezifikation.

Ein verbreiteter Ansatz zum Schutz von Kommunikationsbeziehungen stellt die Verschlüsselung auf der Ebene des Transferprotokolls dar. Dabei hat sich HTTPS etabliert, das im Zusammenhang mit Web Services allerdings nicht ausreichend ist. Bei HTTPS handelt es sich um eine Punkt-zu-Punkt-Verschlüsselung. Deshalb können die übermittelten Nachrichten nicht durch andere Beteiligte verarbeitet, ergänzt oder modifiziert werden. Darüber hinaus bleibt die Verschlüsselung auf ganz oder gar nicht beschränkt. Das Verschlüsseln der Daten für unterschiedliche Empfänger und die digitale Signatur als verbindlicher Nachweis von Ursprung und Authentizität sind kein Bestandteil des Protokolls.Abhilfe für diese Probleme bietet der alternative oder ergänzende Einsatz von Verfahren auf der Datenebene. Diese Mechanismen wirken Ende-zu-Ende und ermöglichen neben der Verschlüsselung vor allem die Authentifizierung von Absender und Empfänger und die digitale Signatur. Als Standard für den Einsatz solcher kryptografischer Verfahren hat sich hierfür WS-Security [1] etabliert. Mit WSS4J [2] aus dem Apache-Axis-Projekt steht eine interessante Implementierung zur Verfügung, die hier am Beispiel eines sehr einfachen Services demonstriert werden soll. Bei WSS4J handelt es sich um ein relativ junges Projekt, das bisher noch kein Bestandteil der normalen Axis-Distribution [3] ist. Ein großes Interesse an dieser Implementierung ist aber bereits erkennbar.

Abb. 1: RequestFlow und ResponseFlow bei Client und Service
Geschrieben von
Andy Wolf
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.