Web Services 安全规范 - 年表

开发 Web Services 安全规范包括有关结构化信息标准促进组织 (OASIS) Web Services 安全规范的信息。OASIS Web Services 安全规范作为保护 WebSphere® Application Server 中的 Web Service 的基础。

最佳实践: IBM® WebSphere Application Server 支持 Java™ API for XML-Based Web Services (JAX-WS) 编程模型以及 Java API for XML-based RPC (JAX-RPC) 编程模型。JAX-WS 是下一代 Web Service 编程模型,用于扩展 JAX-RPC 编程模型所提供的基础。使用策略 JAX-WS 编程模型,借助基于标准的注释模型的支持,简化了 Web Service 和客户机的开发。虽然仍支持 JAX-RPC 编程模型和应用程序,但应该利用易于实现的 JAX-WS 编程模型来开发新的 Web Service 应用程序和客户机。
使用 WebSphere Application Server 中的 JAX-WS 编程模型的优势:
  • 使用策略集时服务质量 (QoS) 配置简化。策略集结合包括那些传输和消息级别配置的配置设置。可以跨多个应用程序复用策略集和常规绑定,使得更容易使用 Web Service QoS。
  • 受管环境(例如 Java EE 容器)和未受管环境(例如 Java Platform, Standard Edition (Java SE 6) 中都支持 JAX-WS 的 WS-Security。另外,还包括同于启用 JAX-WS 客户机中 WS-Security 的 API。

非 OASIS 活动

作为互操作性和集成的可行技术,Web Service 正在迅速获得认可。但是,保护 Web Service 是某种极为重要的服务质量,使采用 Web Service 成为企业的可行的行业和商业解决方案。IBM 和 Microsoft 联合发布关于 Web Service 安全性白皮书,名为 Security in a Web Services World: A Proposed Architecture and Roadmap。 此白皮书讨论建议的 Web Service 安全性路线图中的下列初始规范和后续规范:
Web Service 安全性
此规范定义如何连接数字签名、使用加密和在 SOAP 消息中使用安全性令牌。
WS-Policy
此规范定义用于描述中介或端点的安全性约束和策略。
WS-Trust
此规范定义信任模型的框架以在 Web Service 之间建立信任。
WS-Privacy
此规范定义如何表达 Web Service 和请求者的隐私策略的模型。
WS-SecureConversation
此规范定义如何交换和建立安全的上下文,它会在 Web Service 之间派生会话密钥。
WS-Authorization

此规范定义 Web Service 的授权策略。但是,尚未发布 WS-Authorization 规范。Web Service 安全性的现有实现是基于 Java Platform, Enterprise Edition (Java EE) 的 Web Service 或 Java 规范要求 (JSR) 109 规范。Web Service 安全性实现支持 Java EE 基于角色的授权检查。要获取概念信息,请参阅基于角色的授权。如果要开发需要进行方法级别的授权检查的 Web Service,那么必须使用无状态会话 Bean 来实现 Web Service。有关更多信息,请参阅确保企业 Bean 应用程序安全。

如果要开发作为 Servlet 实现的 Web Service,那么可以在 Web 容器中使用粗颗粒度的授权或基于 URL 的授权。但是,在此情况下,无法使用 Web Service 安全性中的标识来进行授权检查。但是可以使用用于传输的标识。如果使用 SOAP over HTTP,那么标识在 HTTP 传输中。

下图会显示这些规范之间的关系:

不同规范的关系

2002 年 4 月,IBM、Microsoft 和 VeriSign 在其 Web 站点上提出 Web Service 安全性 (WS-Security) 规范(如上图中绿色框中所述)。此规范包括安全性令牌、XML 数字签名 和 XML 加密的基本思想。此规范还定义了用户名令牌和已编码的二进制安全性令牌的格式。在经过一些讨论和基于规范的互操作性测试后,注意到以下问题:
  • 此规范要求 Web Service 安全性处理器正确了解模式,以便处理器可以分辨用于 XML 数字签名和 XML 加密的标识属性。
  • 无法确定消息的新鲜度,而新鲜度表明消息是否遵守预定义的时间约束。
  • 摘要的密码字符串不能增强安全性。
2002 年 8 月,IBM、Microsoft和 VeriSign 出版 Web Service 安全性附录。在附录中涉及以下解决方案:
  • 需要用于 XML 签名和 XML 加密的全局标识属性。
  • 使用表明消息的创建、接收或截止时间的时间戳记头元素。
  • 使用以时间戳记和现时标志(其是随机生成的令牌)摘要的密码字符串。

上图中蓝色框的规范已由各种行业供应商提议,而各种互操作性事件已由供应商组织,以验证和优化提议的规范。

OASIS 活动

2002 年 6 月,OASIS 收到 IBM、Microsoft 和 VeriSign 提议的 Web Services 安全规范。在此次提交后不久就在 OASIS 成立了 Web Service 安全性技术委员会 (WSS TC)。技术委员会包括很多公司:IBM、Microsoft、VeriSign、Sun Microsystems 和 BEA Systems。

在 2002 年 9 月,WSS TC 发布了其第一个规范,即工作草稿 01 的 Web Service 安全性核心规范。此规范包括原始 Web Services 安全规范及其附录的内容。

随着讨论不断深入,该技术委员会的覆盖面也加大了。由于 Web Service 安全性核心规范允许任意类型的安全性令牌,所以建议以概要文件形式发布。这些概要文件描述了用于嵌入令牌的方法,这些令牌包括安全性断言标记语言 (SAML) 令牌和嵌入在 Web Service 安全性消息中的 Kerberos 令牌。随后,用户名令牌和 X.509 二进制安全性令牌使用的定义(它们在原始的 Web Services 安全规范中定义)被分成概要文件。

WebSphere Application Server V5.0.2、V5.1 和 V5.1.1 支持下列规范:
  • Web Service 安全性:SOAP Message Security Draft 13(原 Web Service 安全性核心规范)
  • Web Service 安全性:Username Token Profile Draft 2
在 2004 年 4 月,Web Service 安全规范(正式称为 Web Service 安全性:SOAP 消息安全性 V1.0)成为了 V1.0 OASIS 标准。同样,Username 令牌和 X.509 令牌概要文件也是 V1.0 规范。WebSphere Application Server 6 和更高版本支持 OASIS 的下列 Web Services 安全规范:
在 2006 年 2 月,更新了核心 Web Services 安全规范,它就成了 V1.1 OASIS 标准。同样,更新用户名令牌、X.509 令牌概要文件和 Kerberos 令牌概要文件到 V1.1 规范。WebSphere Application Server 中支持 OASIS 的下列 Web Services 安全规范中的一部分规范,尤其支持签名确认、加密头和指纹引用:

以下规范描述使用关于 Web Service 安全性 消息安全规范的 Kerberos 令牌。规范定义如何使用 Kerberos 令牌支持认证和消息保护:OASIS: Web Services Security Kerberos Token Profile 1.1 OASIS Standard Specification, 1 February 2006

2007 年,OASIS Web Service 安全性交换技术委员会 (WS-SX) 提出并通过了以下规范。WebSphere Application Server V7 和更高版本支持这些规范中的部分规范。

下图显示了与 Web Service 安全性相关的各种规范。

OASIS 规范

WebSphere Application Server 还提供插件功能,启用安全提供程序以扩展运行时功能和在 Web Service 安全性堆栈中实现某些更高级别规范。插件点会作为服务提供程序编程接口 (SPI) 列出。有关这些 SPI 的更多信息,请参阅 Web Service 安全性服务提供程序编程接口的缺省实现

Web Service 安全性 1.0 规范开发

OASIS Web Services 安全规范基于下列万维网联盟 (W3C) 规范。大多数 W3C 规范都在标准主体建议的状态中。

在 Web Service 安全性情况下,WebSphere Application Server 中支持这些规范。例如,可以通过指定部署描述符中的完整性选项来签署 SOAP 消息。应用程序可以使用客户机端应用程序编程接口 (API),启用 Web Service 安全性以确保 SOAP 消息安全。

OASIS Web Service 安全性 V1.0 规范定义用于提供消息完整性和机密性的增强功能。它还提供了使安全性令牌与 SOAP 消息相关联的通用框架。此规范旨在可扩展以支持多个安全性令牌格式。用安全性令牌概要文件处理特定的安全性令牌使用情况。

WebSphere Application Server 中的规范和概要文件支持

OASIS 正在处理各种概要文件。有关更多信息,请参阅结构化信息标准促进组织委员会

以下列表包括已发布的草稿概要文件和正在处理的 OASIS Web Service 安全性技术委员会:

WebSphere Application Server 不支持下列概要文件:

  • Web Service 安全性:SAML 令牌概要文件 1.0
  • Web Service 安全性:权限表达语言 (REL) 令牌概要文件 1.0
  • Web Service 安全性:带附件的 SOAP 消息 (SwA) 概要文件 1.0
注: WebSphere Application Server 5.0.2、5.1.0 和 5.1.1 中不支持 Web Service 安全性 13 号草稿和用户名令牌概要文件 2 号草稿。有关迁移信息,请参阅将启用了 Web Service 安全性的 JAX-RPC 应用程序从 Java EE V1.3 迁移到 V1.4

Web Service 安全性 V1.0 中具有 Web Service 安全性的 SOAP 消息的有线格式已更改,而且不与 Web Services 安全规范的先前草稿兼容。不支持 OASIS Web Service 安全性 V1.0 与先前的 Web Service 安全性草稿之间互操作。但是,可以在 WebSphere Application Server V6 和更高版本上运行基于 Web Service 安全性 13 号草稿的应用程序。在 WebSphere Application Server V5.0.2、V5.1 或 V5.1.1 上,应用程序可与基于 Web Service 安全性 13 号草稿的应用程序互操作。

WebSphere Application Server 同时支持 OASIS Web Service 安全性 13 号草稿和 OASIS Web Service 安全性 1.0 规范。但是在 WebSphere Application Server V6 及更高版本中,不支持 OASIS Web Service 安全性 13 号草稿。但是,在 WebSphere Application Server 5.0.2、5.1.0 和 5.1.1 上使用 OASIS Web Service 安全性 13 号草稿开发的应用程序可以在 WebSphere Application Server V6 和更高版本上运行。OASIS Web Service 安全性 V1.0 支持只可用于 Java Platform Enterprise Edition (Java EE) V1.4 和更高版本的应用程序。部署描述符和绑定的配置格式不同于先前版本的 WebSphere Application Server。必须将现有的应用程序迁移到 Java EE 1.4 并将 Web Service 安全性配置迁移到 WebSphere Application Server V6 格式。

其他 Web Services 安全规范的开发

在 Web Service 安全性情况下,WebSphere Application Server 中支持下列 OASIS Web Services 安全规范的最近更新的版本:
  • WS-Trust V1.3

    Web Services Trust Language (WS-Trust) 使用 Web Service 安全性的安全消息传递机制来定义其他原语和扩展,以发放、交换和验证安全性令牌。WS-Trust 能够在不同的信任域中发放和传播凭证。此规范定义了建立代理信任关系以及评估代理信任关系是否存在的方法。

  • WS-SecureConversation V1.3

    Web Services Secure Conversation Language (WS-SecureConversation) 基于 WS-Security 和 WS-Policy 模型,用于提供服务之间的安全通信。WS-Security 着重于消息认证模型,而不是安全上下文,因此易受各种形式的攻击。此规范定义了建立和共享安全上下文以及从安全上下文导出密钥的机制,使得能够进行安全对话。通过使用 SOAP 可扩展性模型,基于模块化 SOAP 的规范旨在互相组合以提供更丰富的消息传递环境。

  • WS-SecurityPolicy V1.2

    Web Service 安全策略 (WS-Policy) 提供了通用模型和语法来描述和传达 Web Service 的策略。WS-Policy 声明表达特定 Web Service 的功能和约束。WS-PolicyAttachments 定义用于使 WS-Policy 表达式与 Web Service 相关联的多种方法(例如,WSDL)。2005 年 7 月重新发布 WS-Security 策略之后,已经更新了 Web Services 安全规范以反映使用 WS-Security、WSTrust 和 WS-SecureConversation 的 Web Service 的约束和功能。在 2005 年还重新发布了 WS-ReliableMessaging 策略以表达实现 WS-ReliableMessaging 的 Web Service 的功能和约束。

Web Service 互操作性组织 (WS-I) 活动

Web Service 互操作性组织 (WS-I) 是促进供应商、平台、编程语言和应用程序之间互操作的开放式行业成就。组织是跨多个行业的公司协会,包括 IBM、Microsoft、Oracle、Sun、Novell、VeriSign 和 Daimler Chrysler。WS-I 开发了基本安全概要文件 (BSP) V1.0 和 V1.1。BSP V1.0 和 V1.0 都由一组非专有的 Web Service 规范组成,用于阐明和增强这些规范以提升不同供应商实现之间的 Web Service 安全性互操作性。

WebSphere Application Server JAX-WS WS-Security 支持以下规范:

指示主题类型的图标 概念主题



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