级别: 中级 Mark B Coats, 顾问软件工程师, IBM Chao M Beck, 软件工程师, IBM
2009 年 7 月 09 日 了解如何使用 IBM® WebSphere® Application Server V7 Feature Pack for SCA 策略集为绑定了 Web 服务的服务组件体系结构 (SCA) 服务配置 WS-Security 和其他设置。
引言
本系列文章介绍 IBM WebSphere Application Server V7 Feature Pack for SCA,第 1 部分介绍了开放式服务组件体系结构 (SCA) 概念,并描述了该技术的目标以及为 WebSphere Application Server V7 用户提供重要价值的一些关键集成点。本文向您介绍 Web 服务策略集,并解释如何配置 SCA 组件以使用它们。当使用 Web 服务绑定时,这些策略集可用于实现 SCA 服务质量断言(意图)。Web 服务策略集提供可以配置的具体策略,以保证实现这些断言。
策略集概述
当使用与 Web 服务绑定绑定在一起的 SCA 组件时,通过将安全设置和其他 Web 服务设置组合到策略集可以简化 Web 服务的配置。策略集是可以创建、复制并与其他 WebSphere Application Server 组件共享的可重用单元。
WebSphere Application Server V7 提供了由常用策略构成的预配置策略集。Feature Pack for SCA 支持使用 Web 服务绑定的 SCA 服务配置这些策略集。
使用 Web 服务绑定的 SCA 服务可以利用 WebSphere Application Server 中包括的一系列预配置策略集。策略集提供可重用的服务质量配置,这些配置可以与组合单元中定义的 SCA Web 服务绑定相关联。策略集还可以与同一单元中部署的其他 Web 服务共享。
WebSphere Application Server 管理控制台支持将这些策略集附加到 SCA 服务和引用。可以为服务提供者、其端点或操作配置策略集。类似地,也可以将策略集附加到服务引用、其端点或操作。您还可以直接将策略集附加到 SCA 组合中的所有服务或引用。
策略集的实例由策略的集合构成。例如,WS-I RSP 缺省策略集由 WS-Security、WS-Addressing 和 WS-ReliableMessaging 策略类型的实例构成。策略集使用名称标识,该名称在整个单元中具有唯一性。
这些预配置的策略集可以用作起点,并且可以自定义这些策略集以满足您的特定需求。您可以通过使用特定于组合单元的绑定(特定于应用程序的绑定),或直接使用通用绑定来进一步自定义附加的策略集。通用绑定是安全域的全局绑定,并且可以跨应用程序和组合单元共享。
有关详细信息,请参阅 WebSphere Application Server 信息中心中的 Web 服务策略集主题。
使用策略集配置 HelloWorld
作为一个示例,我们将考虑使用一个预配置的策略集,该策略集由随 Feature Pack for SCA 提供的 Async HelloWorld Web 服务示例配置。按照其关联的自述文件中的描述配置该示例,然后在继续之前使用浏览器验证该示例是否正确运行。
在下面的步骤中,您将从 WebSphere Application Server 缺省存储库中导入“WSSecurity default”策略集。此策略集通过数字签名来保护消息的完整性,并通过加密来保护消息的机密性。然后,将 WSSecurity default 策略集附加到 HelloWorld 示例的以下两个组合单元中的服务提供者和服务引用:helloworldws 和 helloworldwsclient。
-
在 WebSphere Application Server 管理控制台中,导航到 Services => Policy Sets => Application policy sets。单击 Import,并选择 From Default Repository...(图 1)。
图 1. 应用程序策略集
-
向下滚动,并选中 Username WSSecurity default 策略集复选框(图 2),然后单击面板底部的 OK。
图 2. 从缺省存储库导入
-
导航到 myhelloWorld 业务级应用程序,并转到 helloworld 组合单元(图 3)。从右侧的 Additional Properties 列表中选择 Service provider policy sets and bindings。
图 3. helloworld 组合单元
-
选中 HelloWorldService 复选框,并单击 Attach 按钮。从显示的下拉菜单中(图 4)单击 WSSecurity default 策略集。
图 4. 服务提供者策略集和绑定
-
返回到组合单元面板(图 3),并重复相同的步骤来配置引用。单击右侧 Additional Properties 列表中的 References policy sets and bindings。选中 HelloWorldCallbackService 复选框(图 5),然后单击 Attach。从显示的下拉菜单中选择 WSSecurity default 策略集。
图 5. 引用策略集和绑定
现在,已经将 WSSecurity default 策略集附加到了 helloworldws 组合单元中的 Web 服务引用和提供者。
-
导航到第二个组合单元 helloworldclient(图 6)。
图 6. helloworldclient 组合单元
-
按照 helloworld 组合单元中的方法,使用 Service provider policy sets and bindings 和 References policy sets and bindings 链接附加 WSSecurity default 策略集。在完成这些步骤之后,HelloWorldCallbackService 服务提供者和 HelloWorldCallbackService 引用应该已经附加了 WSSecurity default 策略集。
如果在表中选择了第一个资源 helloworldws,则会将策略集附加到此组合单元中的所有服务引用。如果 helloworldws 配置了许多服务引用,这将是一个更有意义的选项。
-
使用控制台的 Save 选项将更改写入您的配置。
-
导航到业务级应用程序集合,然后停止并重新启动 myhelloWorld 和 myhelloWorldClient 业务级应用程序(图 7)。
图 7. 业务级应用程序
-
现在可以按照 HelloWorld 示例关联的自述文件中所述运行该示例。

 |

|
总结
通过为示例中的服务和引用配置策略集,您可以更改服务的安全行为,而无需对业务逻辑进行任何更改。
在配置策略集之前,没有为 HelloWorldCallbackService 和 HelloWorldService 服务之间的消息流提供任何保护。现在,这些消息流由 WSSecurity default 策略集定义的策略提供保护。已经对这些消息进行了签名并添加了时间戳,确保了数据的一致性和正确性。还对这些消息进行了加密,确保了消息的机密性。当然,还有更多策略集配置功能在本文中没有介绍。其中一个比较重要的是策略集替换操作。请导航到 Application policy sets => WSSecurity default => Attached deployed assets 了解它的工作方式。
参考资料 学习
获得产品和技术
作者简介  | |  |
Mark Coats 是一名 WebSpere Application Server 高级开发人员,他关注的领域是 Web 服务和管理控制台。在以前的工作中,他曾是 CORBA 对象请求代理的开发人员和 Attachmate Corporation 公司的通信系统工程师。 |
 | |  |
Chao Beck 是服务组件体系结构(Service Component Architecture,SCA)功能包早期计划的技术负责人。她是 Application Integration Middleware 早期计划团队的老资格成员,负责执行 IBM WebSphere Application Server 产品的早期计划。她处理新产品功能的教育开发和交付,并在 GA 前(早期)计划和 GA 后(客户促进)计划期间提供客户支持。 |
对本文的评价
|