启用安全对话

使用安全对话来保护安全 Web Service 应用程序消息。

开始之前

必须已部署包含 Web Service 的应用程序。

关于此任务

结构化信息标准促进组织 (OASIS) Web Service 安全对话 (WS-SecureConversation) 草稿规范描述了在 SOAP 消息的发起方与接收方之间建立安全对话的方法。WS-SecureConversation 草稿规范还定义如何使用 OASIS Web Service 信任 (WS-Trust) 协议来创建安全上下文令牌 (SCT)。有关完整信息,请参阅 OASIS Web Service 安全对话规范。

WebSphere® Application Server 支持端点为 WS-SecureConversation 发布安全上下文令牌,从而在 SOAP 消息的发起方与接收方之间提供安全会话。

下图描述了创建安全上下文和使用基于会话的安全性所必需的流程。

图 1. 显示客户机、Web Service 与安全性令牌服务之间的流显示客户机、安全性令牌服务与 Web Service 之间的流程
通常,要使用安全对话,需要执行以下步骤:
  1. 客户机将对安全上下文令牌的 RequestSecurityToken (RST) 信任请求及其密钥(平均信息量和目标密钥大小)发送到应用程序端点并请求目标服务密钥。

    通常,使用在引导策略中定义的非对称 Web Service Security 来保护此请求。

  2. RST 是由信任服务来处理的,如果请求基于安全策略是可信的,那么信任服务将使用 WS-Trust RequestSecurityTokenResponse (RSTR) 来返回安全上下文令牌和目标服务密钥。

    通常,使用非对称 Web Service Security 来保护此请求。客户机根据引导策略来验证 RSTR 是否可信。

  3. 如果 RequestSecurityTokenResponse 是可信的,那么客户机将使用会话密钥来保护后续的应用程序消息(即,为这些消息签名和加密)。

    会话密钥由安全上下文令牌的秘密派生而来,而安全上下文令牌是从在发起方与接收方之间交换的初始 WS-Trust RequestSecurityToken 和 RequestSecurityTokenResponse 消息中获得的。

  4. 规范定义如何根据初始秘密来派生密钥的算法。目标 Web Service 将根据在 SOAP 消息的安全性头中获得的元数据和初始秘密来计算派生密钥。
  5. 目标 Web Service 使用派生的密钥并根据应用程序安全策略来验证消息和对消息加密。
  6. 目标 Web Service 使用从私钥派生的密钥并根据应用程序安全策略为响应签名和对响应加密。
  7. 重复执行步骤 3 到步骤 6,直到完成消息交换过程为止。

在 WS-SecureConversation 规范中,安全上下文由 <wsc:SecurityContextToken> 安全性令牌表示。以下示例表示 <wsc:SecurityContextToken> 元素的声明语法。

<wsc:SecurityContextToken wsu:Id="..." ...>
    <wsc:Identifier>...</wsc:Identifier>
    <wsc:Instance>...</wsc:Instance>
    ...
</wsc:SecurityContextToken>

安全上下文令牌不支持通过使用密钥标识或密钥名称进行引用。所有引用都必须使用标识(指向 wsu:Id 属性)或指向 <wsc:Identifier> 元素的 <wsse:Reference>。

WebSphere Application Server 提供以下预配置的安全对话相关策略:

  • SecureConveration 策略集遵循 WS-SecureConversation 和 WS-Security 规范,并提供一个策略集,此策略集启用了安全对话并使用派生自安全上下文令牌的密钥对应用程序消息进行签署和加密。
  • Username SecureConversation 策略集遵循 WS-SecureConversation 和 WS-Security 规范并使用用户名令牌来添加认证。
  • LTPA SecureConversation 策略遵循 WS-SecureConversation 和 WS-Security 规范并使用轻量级第三方认证 (LTPA) 令牌提供认证。

在本示例中,将使用缺省 SecureConversation 策略集、缺省 WS-Security 绑定和 TrustServiceSecurityDefault 绑定来实现启用安全对话的任务。缺省 SecureConversation 策略集具有应用程序策略 (symmetricBinding) 和引导策略 (asymmetricBinding)。应用程序策略用于保护应用程序消息,而引导策略用于保护 RequestSecurityToken (RST) 消息。

使用 TrustServiceSecurityDefault 系统策略和 TrustServiceSecurityDefault 绑定对发布安全上下文令牌的信任服务进行配置。信任策略负责保护 RequestSecurityTokenResponse (RSTR) 消息。如果修改了引导策略,那么必须修改信任策略以与这两种配置匹配。

注: 仅在开发和测试环境中使用以下步骤。

在此处使用的 Web Service 安全性 (WS-Security) 缺省绑定包含样本密钥文件,并且在生产中使用前必须进行定制。对于生产环境,建议使用定制绑定。另请注意,如果通过选项使用开发模板创建服务器创建概要文件,那么可以跳过步骤 2 和步骤 3。

要配置安全对话、配置策略集以及对策略添加策略声明,请完成以下步骤:

过程

  1. 备份缺省安全对话策略,以便对您自己的环境定制策略集。
    1. 启动管理控制台并单击服务 > 策略集 > 应用程序策略集
    2. 选中遵循 WS-SecureConversation 规范的现有策略集旁边的复选框。 例如,可以单击 SecureConversation 旁边的复选框。此策略集是其中一个预先配置的安全对话相关应用程序策略集,列示在表中。SecureConversation 策略集使一个引导策略与缺省策略集匹配,以使信任服务发布和更新令牌。
    3. 单击复制
    4. 输入 SecureConversation 应用程序策略集的新副本的唯一名称。例如: CopyOfSCPolicySet
    5. 可选: 根据需要,更改此策略集的定制版本的描述。
  2. 将策略集和绑定连接至应用程序。
    1. 单击应用程序 > 应用程序类型 > WebSphere 企业应用程序 > application name
    2. 单击服务提供程序策略集和绑定服务客户机策略集和绑定,以便将资源连接至 CopyOfSCPolicySet 策略集。常规绑定自动指定为缺省值。
    3. 可以使用连接策略集指定绑定菜单列表来选择其他策略集或绑定。

结果

完成这些步骤后,您配置了安全对话。

下一步做什么

接下来,请检查示例方案以了解如何创建安全上下文令牌来保护安全对话。


指示主题类型的图标 任务主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twbs_enablesecureconv
文件名:twbs_enablesecureconv.html