借助 Web Service,可基于对策略集定义的服务质量对消息部件进行签署和/或加密。可通过在定制连接绑定中定义绑定信息来完成这些操作。
开始之前
开始本任务前,请将策略集连接到诸如应用程序、服务或端点之类的服务工件,然后创建定制连接绑定。请阅读有关为策略集创建定制连接绑定的信息。连接到服务工件的策略集必须包括指定要进行签署或加密的消息部件的 WS-Security 策略。请阅读有关使用管理控制台保护消息部件的信息。
关于此任务
要根据对策略集定义的服务质量对消息部件进行签署和/或加密,请执行以下步骤:
过程
- 打开管理控制台。
- 要对服务提供程序进行消息部件签署和加密,请单击应用程序 > 企业应用程序 > application_name > 服务提供程序策略集和绑定。要对服务客户机进行消息部件签署和加密,请单击应用程序 > 企业应用程序 > application_name > 服务客户机策略集和绑定。
- 单击具有定制连接绑定的服务工件的绑定名称链接。
- 如果绑定没有包含 WS-Security 策略集绑定,请单击添加并从列表中选择 WS-Security。
- 单击 WS-Security 策略集绑定。
- 单击认证和保护。 打开的面板包含下列四个表:
- 保护令牌:指定策略集中对对称或非对称签名和加密策略定义的令牌。
- 认证令牌:指定对请求和响应令牌策略定义的令牌。
- 请求消息签名和加密保护:指定在策略集的请求消息部件保护中定义的消息部件。
- 响应消息签名和加密保护:指定在策略集的响应消息部件保护中定义的消息部件。
最初,每个表显示有关基于连接到服务工件的策略集生成的信息。将显示基于此策略集的可能配置对象。“状态”列指示对象当前在定制连接绑定中是否进行配置。
- 如果保护令牌的状态是未配置,那么通过单击缺省名称、验证缺省值来创建保护令牌。单击确定。
- [可选] 如果使用的是 X.509 保护令牌,那么必须配置密钥库和密钥以用于对消息部件进行签署、验证、加密或解密。使用定制保护令牌时,可能也需要配置密钥库和密钥,具体情况取决于定制令牌的要求。将安全上下文令牌用于保护(安全对话)时,不需要配置密钥库或密钥。如果需要配置密钥库和密钥,请执行以下操作:
- 单击令牌名称链接。
- 单击“其他绑定”下的回调处理程序链接。如果“回调处理程序”链接不可单击,请单击应用,然后单击回调处理程序链接。
- 使用预定义的密钥库或定制密钥库。要使用预定义的密钥库,请从列表中选择密钥库。要使用定制密钥库,请从列表中选择定制,然后单击定制密钥库配置链接以指定配置。
- 单击确定。
- 单击要进行签署或加密的请求或响应消息部件引用的名称。“保护”列显示消息部件是否已基于策略集进行签署或加密。
- 指定消息部件的名称。
- 对于加密部件,请从密钥信息引用的用途中选择加密类型。对于非对称加密(即 X.509),请选择密钥加密。对于对称加密(即安全对话),请选择数据加密。
- [可选] 对于加密部件,请选择包含时间戳记或包含现时标志选项以便将时间戳记或现时标志包含在加密消息部件中。 可以将这两个选项中的一个或两个包含在加密消息部件中。
- 对于签署部件,请指定一个或多个消息部件引用。从“可用”列中选择引用并单击添加。
- [可选] 对于签署部件,也可以选择将时间戳记或现时标志添加到签署消息部件。从“已指定”列中选择消息部件引用,然后单击编辑。选择包含时间戳记或包含现时标志选项以便将时间戳记或现时标志包含在签署消息部件中。 可以在签署消息部件中选择这两个选项中的一个或两个。
- 如果没有可用的密钥信息条目,请执行以下操作创建一个条目:
- 单击新建。
- 指定名称。
- 从“令牌生成者或使用者名称”列表中选择保护令牌。
- 单击确定。
- 从“可用”列表中选择密钥信息条目,然后单击添加。
- [可选] 根据需要指定定制属性。
- 要对加密数据的密文使用消息传输优化机制 (MTOM),请将值为 true 的定制属性 com.ibm.wsspi.wssecurity.enc.MTOM.Optimize 添加到客户机请求或服务器响应的出站加密部件。
- 要使用在 WS-Security 1.0 规范中描述的加密头取代在 WS-Security 1.1 中描述的加密头支持,请将值为 true 的定制属性 com.ibm.wsspi.wssecurity.encryptedHeader.generate.WSS1.0 添加到客户机请求或服务器响应的出站加密部件。
对于等价于 V7.0 之前的 WebSphere® Application Server 的 Web Service 安全性 V1.1 行为,请在绑定中的 <encryptionInfo> 元素上,将 com.ibm.wsspi.wssecurity.encryptedHeader.generate.WSS1.1.pre.V7 属性的值指定为 true。如果指定此属性,那么 <EncryptedHeader> 元素会包括 wsu:Id 参数,而 <EncryptedData> 元素会省略该 Id 参数。只有在不需要符合 Basic Security Profile 1.1 时,才应该使用此属性。
- 单击确定。
- 单击保存以保存您对主配置所作的更改。
结果
完成本任务后,将根据与服务工件进行通信时使用的配置对消息部件进行签署和/或加密。
示例
您具有应用程序
app1,该应用程序具有连接的策略集、RAMP default 和定制连接绑定
myBinding,并且您想要对消息部件进行签署和加密。
- 单击应用程序 > 企业应用程序集合中的 app1 应用程序。
- 单击服务提供程序策略集和绑定链接或服务客户机策略集和绑定链接。
- 单击 myBinding 链接。
- [可选] 如果未列示 WS-Security,请选择添加 > WS-Security。
- 单击 WS-Security 链接。
- 单击认证和保护链接。
- 在“保护令牌”表上打开的面板中,单击各个链接(共四个)和确定。现在,在“状态”列中,各个条目均显示为已配置。
- 在“请求消息签名和加密保护”表中,单击 request:app_encparts。指定名称 requestEncParts。
- 从“密钥信息”单击新建。指定名称 requestEncKeyInfo。
- 选择 SymmetricBindingRecipientEncryptionToken 并单击确定。
- 在“可用”列表中选择 requestEncKeyinfo,然后单击添加。单击确定。
- 在“请求消息签名和加密保护”表中,单击 request:app_signparts。
- 指定名称 requestSignParts。
- 从“密钥信息”单击新建。指定名称 requestSignKeyInfo。
- 选择 SymmetricBindingInitiatorSignatureToken,然后单击确定。
- 在“可用”列表中选择 requestSignKeyinfo,然后单击添加。单击确定。
- 对“响应消息签名和加密保护”表中的链接重复步骤 8 至 16。
- 单击保存以保存您对主配置所作的更改。