Sicherheit bei Web Services

XML Signature und Encryption

Da SSL die Sicherheitsprobleme von Web Services nicht grundsätzlich löst, sind andere Mechanismen nötig, um die Security-Anforderungen zu erfüllen. Verschiedene Gremien und Unternehmenszusammenschlüsse haben sich damit beschäftigt, Erweiterungen herkömmlicher Sicherheitslösungen zu definieren, die die Schwachstellen ausmerzen sollen. Diese Erweiterungen basieren auf XML-Ebene.

Mit dem W3C-Standard „XML Signature Syntax and Processing“ soll dem breiten Einsatz von XML-Signaturen in der Praxis der Weg geebnet werden. Charakteristisch für eine XML Signatur ist die Möglichkeit nur Teile eines XML Dokuments zu signieren. Dies erhöht die Flexibilität bei der Erstellung und einer etwaigen Weiterverarbeitung der Information. Zum Beispiel kann ein Nutzer eines Web Services Protokolls wie SOAP nur den Nutzlast-Teil der XML Nachricht verschlüsseln, nicht aber die Informationen, die fürs Routing zum Empfänger benötigt werden.

Die dazugehörige „Decryption Transform for XML Signature“ Recommendation (www.w3.org/TR/xmlenc-decrypt) ermöglicht die Verschlüsselung mit XML Signature. Eine Eigenschaft von XML Signature ist die Sicherstellung der Dokumentenintegrität: XML Signature erkennt, wenn sich ein Dokument geändert hat. Viele Anwendungen erfordern es, dass ein XML-Dokument erst signiert wird und später Teile davon verschlüsselt werden; was zu einer Veränderung des Dokuments führt. „Decryption Transform“ lässt den Empfänger wissen, welche Teile des Dokuments entschlüsselt werden müssen - also wie das Dokument in den ungeänderten Zustand gebracht werden muss, bevor man die Signatur überprüfen kann.