Americas

  • United States
by Shirley Kawamoto, special to Network World

WS-Security uses SOAP to carry message

How-To
Dec 16, 20025 mins
Programming LanguagesSecurityWeb Development

Web services represent a powerful model that allows for remote data exchange using Internet standard protocols in a platform- and language-neutral way. However, it can present a security problem.

Web services represent a powerful model that allows for remote data exchange using Internet standard protocols in a platform- and language-neutral way. This message-based approach, transmitted via HTTP, enables complex interactions that can include the routing of messages through several nodes.

But this presents a security problem. Many traditional, connection-oriented, point-to-point security tools on which we’ve come to depend, aren’t as useful as they once were. Web services need an end-to-end security solution that can be used regardless of the nodes a message crosses.

WS-Security is a proposed standard format for carrying security-related information in a Simple Object Access Protocol (SOAP) message – a joint effort of IBM, Microsoftand. WS-Security builds on the World Wide Web Consortium (W3C) encryption and digital signature specifications by tailoring them to SOAP.

Verisign

Before WS-Security, the W3C developed standards for XML Signature and XML Encryption. With digital signature and encryption, XML messages are kept confidential and protected against unauthorized modification. With digital signatures, the source of a message can be authenticated. These cryptographic capabilities provide many of the necessary security features. But, more is needed for Web services.

WS-Security defines XML structures for security tokens that clients can use to claim an identity or some privilege. WS-Security tokens include username, binary and security token reference.

A claim can be endorsed or unendorsed. An endorsed claim comes with evidence that a trusted third party vouches for the claim. An X.509 certificate is a token with an endorsed claim. In this case, a certificate authority vouches for the identity of the owner of the public/private key pair.

On the other hand, a username, with or without an accompanying password, is an unendorsed claim and requires that provisions be made to trust the username. One possible provision is to include a password so that the receiver can check the transmitted password against a local database. This is called a proof-of-possession claim, because the user shows that he has username’s password.

An example of the use of WS-Security is a message that is an invoice for a book that Jane Doe is purchasing from BestSellers.com. BestSellers will send the invoice to Shipper.com, which is responsible for getting the book to Jane. A header targeted at Shipper instructs it to send the book via next-day shipping.

Shipper will print out the invoice and include it in the shipment. BestSellers wants Shipper to know that it sent the message and that the invoice hasn’t been modified in transit. So BestSellers signs the message digitally. The signature is included in the message.

Many details relating to WS-Security still need to be worked out. Adherence to standards does not guarantee interoperability, and managing trust relationships is still a challenge. Indications are that we are well on the way to cross-platform security solutions that will give businesses the confidence they require to adopt Web services.

Keys to success

In hindsight, CIO Doug Bourgeois would have taken these steps before launching the Trademark Office’s telework program

xmlns:env=”http://www.w3.org/2001/12/soap-envelope”

xmlns:wsse=”http://schemas.xmlsoap.org/ws/2002/04/secext”

xmlns:dsig=”http://www.w3.org/2000/09/xmldsig#”>

xmlns:n=”http://shipper.com/shippinginstructions”

env:role=”http://www.w3.org/2002/06/soap-envelope/role/next”

env:mustUnderstand=”true”>

Next Day

wsse:actor=”http://www.w3.org/2002/06/soap-envelope/role/next”>

wsse:Id=”BestsellersToken”

wsse:ValueType=”wsse:X5090v3″

wsse:EncodingType=”wsse:Base64Binary”>

asDVIWMI389MJmdn . . .

“http://www.w3.org/2001/10/xml-exc-c14n#”/>

xmlns:p=http://bestsellers.com/invoice>

NewBook

1

15.25

Jane Doe