Oracle OpenSSO Update 2 发行说明

安全令牌生成过程流

使用 Liberty Alliance Project 令牌启用安全性时,HTTP(超文本传输协议)客户端(即浏览器)会通过 Web 服务客户端向 Web 服务提供者发送访问请求。Web 服务安全代理会将该请求重定向至 OpenSSO STS 验证服务。如果采用 Liberty Alliance Project 安全机制,HTTP(超文本传输协议)安全代理会发出重定向命令。如果使用 WS-IBS 安全,SOAP 安全代理会发出重定向命令。

OpenSSO STS 验证服务会确定 Web 服务提供者注册的安全机制,并检索相应的安全令牌。成功进行验证后,Web 服务客户端会提供 SOAP 消息体,而 Web 服务客户端上的 SOAP 安全代理会插入安全标头和一个令牌。然后,在将请求发送给 WSP 之前,会对该消息进行签名。

Web 服务提供者端的 SOAP 安全代理会先验证 SOAP 请求中的签名和安全令牌,然后再将该请求转发给 Web 服务提供者自身。Web 服务提供者然后将处理该请求并将 SOAP 安全代理签名的响应返回给 Web 服务客户端。然后,Web 服务客户端上的 SOAP 安全代理会验证签名,之后再将该响应转发给 Web 服务客户端。

下表列出 Liberty Alliance Project 事务支持的令牌及其简短描述。

表 3–1 请求者令牌 - Liberty Alliance Project

令牌

满足以下要求

X.509 

  • 安全 Web 服务使用公钥基础结构 (Public Key Infrastructure, PKI),在该基础结构中,Web 服务客户端提供公钥作为识别请求程序以及向 Web 服务提供者进行验证的方式。

  • 安全 Web 服务使用公钥基础结构 (Public Key Infrastructure, PKI),在该基础结构中,Web 服务客户端提供公钥作为识别请求程序以及向 Web 服务提供者进行验证的方式。

持有者令牌 

  • 安全 Web 服务使用安全声明标记语言 (Security Assertion Markup Language, SAML) SAML 持有者令牌确认方法。

  • WSC 为 SAML 声明提供公钥信息,以此作为向 Web 服务提供者验证请求程序的方式。

  • 第二个签名将该声明绑定到 SOAP 消息。

  • 第二个签名绑定使用 Liberty Alliance Project 定义的规则。

SAML 令牌 

  • 安全 Web 服务使用 SAML 密钥持有者确认方法。

  • WSC 将 SAML 声明和数字签名添加到 SOAP 标头中。

  • 该签名还会随附一个发件人证书或公钥。

  • 将使用 Liberty Alliance Project 定义的规则来处理发送。

下表列出 WS-IBS 事务支持的令牌及其简短描述。

表 3–2 请求者令牌 - WS-IBS

令牌

满足以下要求

用户名 

  • 安全 Web 服务需要用户名、密码及已签名的请求(可选)。

  • Web 服务使用者提供用户名令牌作为识别请求程序的方式

  • Web 服务使用者提供密码、共享密码或等效密码以向 Web 服务提供者验证身份。

X.509 

安全 Web 服务使用 PKI(公钥基础结构),在该基础结构中,Web 服务使用者提供公钥作为识别请求程序以及完成向 Web 服务提供者进行的验证的方式。 

SAML 密钥持有者 

  • 安全 Web 服务使用 SAML 密钥持有者确认方法。

  • Web 服务使用者为 SAML 声明提供公钥信息,以此作为向 Web 服务提供者验证请求程序的方式。

  • 第二个签名将该声明绑定到 SOAP 有效载荷。

SAML 发件人担保 

  • 安全 Web 服务使用 SAML 发件人担保确认方法。

  • Web 服务使用者将 SAML 声明和数字签名添加到 SOAP 标头中。该签名还会随附一个发件人证书或公钥。