Configure an application for Web services security with an assembly tool

 

Before you begin

Prior to completing this task, import your application into an assembly tool. For information on how to import your application, see Import enterprise applications.

 

Overview

There are eight parts of Web services security that configure to secure your SOAP messages using either digital signature or encryption. Four of these parts involve the deployment descriptor extensions and four parts involve the bindings that correspond to the deployment descriptors. The following table illustrates these eight parts that involve both the client and the server or a server acting as a client. It is recommended that you configure each of these parts in order from left to right in the table. For example, configure the request generator extensions and then the request consumer extensions because the configurations must match. After you configure the request generator and request consumer extensions, configure the request generator and the request consumer bindings, and so on.

Table 1. Client and server extensions and bindings relationship
Client Server
1. Request generator extensions 2. Request consumer extensions
3. Request generator bindings 4. Request consumer bindings
5. Response consumer extensions 6. Request generator extensions
7. Response consumer bindings 8. Response generator bindings

In Web services security for WAS Version 6, integrity refers to digital signature and confidentiality refers to encryption. Integrity decreases the risk of data modification when data is transmitted across a network. Confidentiality reduces the risk of someone intercepting the message as it moves across a network. With confidentiality, however, the message is encrypted before it is sent and decrypted when it is received by its target server. The article provides the steps needed to secure your Web services using either integrity or confidentiality.

In the generator bindings, one can specify which message parts to sign (integrity) or encrypt (confidentiality) and what method is used. In the consumer bindings, you specify when the message parts are signed or encrypted. After you verify the digital signature or encryption in the consumer, the consumer verifies that the specified message parts are actually signed or encrypted. If the digital signature or encryption is required and the message is not signed or encrypted, the message is rejected by the consumer.

There are two different methods to specify what needs to be signed (integrity) or encrypted (confidentiality). Use either keywords or an XPath expression to configure message parts, a nonce, or a time stamp. When you use keywords, one can specify only certain elements within a message. With an XPath expression, one can specify any part of the message.

In addition to securing Web services for integrity and confidentiality, the assembly tools enable you to complete the following tasks:

 

Steps for this task (dependent on configuration)

 

Result

By completing the previous steps, you have configured your application for either digital signature (integrity) or encryption (confidentiality).

 

See also


XML digital signature
Signing message elements in generator security constraints with keywords
Signing message elements in generator security constraints with an XPath expression
Collection certificate store
Configuring the collection certificate store for the generator binding with an assembly tool
Trust anchor
Configuring token generators with an assembly tool
Key locator
Configuring key locators for the generator binding with an assembly tool
Configuring key information for the generator binding with an assembly tool
Configuring signing information for the generator binding with an assembly tool
Signing message elements in consumer security constraints with keywords
Signing message elements in consumer security constraints with an XPath expression
Configuring the collection certificate store for the consumer binding with an assembly tool
Trusted ID evaluator
Configuring token consumers with an assembly tool
Configuring the key locator for the consumer binding with an assembly tool
Configuring key information for the consumer binding with an assembly tool
Configuring signing information for the consumer binding with an assembly tool
Encrypting the message elements in generator security constraints with keywords
Encrypting the message elements in generator security constraints with an XPath expression
XML encryption
Configuring encryption information for the consumer binding with an assembly tool
Encrypting message elements in consumer security constraints with keywords
Encrypting message elements in consumer security constraints with an XPath expression
Configuring encryption information for the generator binding with an assembly tool
Adding a stand-alone time stamp to generator security constraints
Adding a stand-alone time stamp in consumer security constraints
Security token
Configuring the security token in generator security constraints
Configuring the security token requirement in consumer security constraints
Configuring the caller in consumer security constraints
Configuring identity assertion

 

See Also


Nonce, a randomly generated token