WebSphere Service Registry and Repository V8 与 WebSphere DataPower V5 的安全集成

本文展示了如何配置 WebSphere Service Registry and Repository V8 和 WebSphere DataPower V5 SOA Appliances,实现安全的连接和集成。

Stephen Willoughby, 解决方案测试专家, IBM

Stephen Willoughby 是 WebSphere Service Registry and Repository 团队的解决方案测试专家。他于 2000 年加入 IBM,当时他还是一名学生,2002 年毕业后正式加入 IBM。2006 年,他加入了 WebSphere Service Registry and Repository 团队后一直担任测试员。



Jason K. Yong, 测试专家,WebSphere Service Registry and Repository 开发团队, IBM

Jason Yong 的照片Jason Yong 是 WebSphere Service Registry and Repository 开发团队的一名测试专家。他于 2001 年毕业后加入 IBM,担任各种 WebSphere 产品的测试员,随后于 2009 年加入 WebSphere Service Registry and Repository 开发团队。您可以通过 jason_yong@uk.ibm.com 联系 Jason。



2012 年 12 月 24 日

简介

IBM® WebSphere® Service Registry and Repository(以下简称 WSRR)是一个存储、访问和管理信息的系统,可用于 SOA 中的服务选择、调用、管理、治理和重用。换句话说,您可以在这里存储您已经在您的系统上或其他组织的系统上使用过的、计划使用或想要了解的服务的相关信息。例如,一个应用程序可在调用一个服务前检查 WSRR,以便找出最好地满足其功能和性能需求的服务实例。

WSRR 在 SOA 生命周期的其他阶段发挥着重要作用。它包含一个存储服务信息(比如它们的接口、操作和参数)的注册表,还有一个元数据存储库提供了一个健壮、可扩展的框架,以容纳服务使用的各种性质。WSRR 还提供了管理和治理功能,帮助您从 SOA 中获取最多的业务价值。

您还可以使用 WSRR 创作和存储策略文档和策略附件。然后可以创建策略文档,将它们附加到存储在 WSRR 中的对象,在运行时由一个策略实施点 (PEP)(比如 WebSphere DataPower)实施策略。总体来讲,WSRR 是一个成功的 SOA 的基本组件。

WebSphere DataPower® Appliances(以下简称 DataPower)支持线速 XML 传输。DataPower V5 可订阅一个存储在 WSRR 中的服务,自动实施附加到服务的对象的任何策略。

本文将展示如何配置 DataPower 和一个 WSRR 服务器来彼此通信和交换证书。

需求

  • 启用了安全性的 WSRR V8.0(或更高版本)
  • 作为 WSRR Governance Enablement Profile (GEP) 部署和激活的一个 WSRR 配置概要文件
  • 一个安装并配置来使用 WSRR 的 WebSphere Business Space,以及基于 4 个 WSRR 模板的每一个的空间
  • WebSphere DataPower V5.0

配置 DataPower

为了使 DataPower 和 WSRR 能够彼此通信,您需要在 DataPower 内创建多个对象。如果在托管 WSRR 的 WebSphere Application Server 实例上启用了安全性,那么您需要使用一个浏览器将其 SSL 证书导入 DataPower 中,并创建一个 WSRR 服务器对象。

导入 SSL 证书

使用 Firefox:

  1. 登录到 WebSphere Application Server Administration Console。
  2. 右键单击页面并选择 View Page Info
  3. Security 选项卡上单击 View Certificate
  4. 切换到 Details 选项卡并单击 Export
  5. 为证书提供一个合适的名称,选择类型(比如 DER)。单击 Save

使用 Internet Explorer:

  1. 确保 Protected Mode 已关闭:转到 Tools => Internet options => Security 并取消选择 Enable Protected Mode
  2. 登录到 WebSphere Application Server Administration Console。
  3. 右键单击页面,选择 Properties,然后单击 Certificates
  4. 转到 Details 选项卡并单击 Copy to file。按照 Certificate Export Wizard 提供的指令操作。您现在拥有了证书,已做好将它导入 DataPower 的准备了。

在 DataPower 中创建 SSL 工件

  1. 从 https://yourserver:9090 上的 DataPower Web UI 登录到您的域。
  2. 从左侧菜单选择 Objects => Crypto Configuration => SSL Proxy Profile,然后单击 Add
    创建一个 SSL 代理配置文件
    创建一个 SSL 代理配置文件
  3. 在新窗口中,输入 SSL 代理的名称,比如 WSRR_hostname_SSL_Proxy
  4. 将 SSL Direction 更改为 Forward,然后单击 + 按钮创建一个 Forward (Client) Crypto Profile:
    配置 SSL 代理配置文件
    配置 SSL 代理配置文件
  5. 在新窗口中,为 Forward (Client) Crypto Profile 输入一个名称,比如 WSRR_hostname_Forward_Crypto_Profile,然后单击 Validation Credentials 旁边的 + 按钮:
    配置 Crypto Profile
    配置 Crypto Profile
  6. 为验证凭据输入一个名称,比如 WSRR_hostname_Crypto_Validation,然后单击 + 按钮:
    配置验证凭据
    配置验证凭据
  7. 为 Crypto Certificate 输入一个名称,比如 WSRR_hostname_Crypto_Certificate,然后单击 Upload
  8. 在新窗口中,查找到您前面保存的证书并单击 Upload 窗口。
  9. 现在返回到窗口链上单击 Apply。最后应返回到 Configure SSL Proxy Profile 页面。应用之后,保存配置:单击右上角的 Save Config
    上传证书
    Crypto Certificate

创建 WSRR 服务器对象

  1. 从左侧的菜单,选择 Objects => Configuration Management => WSRR Server,然后单击 Add
    创建 WSRR 服务器对象
    WSRR Server 菜单
  2. 为服务器输入一个名称,比如 WSRR_hostname_WSRR_Server。修改 SOAP URLWSRR Server Version 以与您服务器的设置匹配。
  3. 因为已对托管 WSRR 的 WebSphere Application Server 实例启用了安全性,所以需要输入一个用户名和密码。
  4. 从下拉菜单中,选择您在上面创建的 SSL Proxy Profile 并单击 Apply。保存配置:
    配置 WSRR 服务器对象
    配置 WSRR 服务器

启用 WSRR 订阅

如果希望在 WSRR 和 DataPower 之间使用自动同步方法,您需要有一位 DataPower 管理员来启用来自 XML Management Interface (XMI) 的 WSRR 订阅。有关的更多信息,请参阅 DataPower 信息中心内的 启用接口服务

配置 WSRR

现在您的 DataPower 设备已设置,是时候配置 WSRR 和它的 WebSphere Application Server 实例了,这涉及到导入 DataPower 证书并启用 Subscription Notifier 计划服务。

导入证书

幸运的是,将证书从 DataPower 导入到 WebSphere Application Server 中要简单得多。

  1. 使用一个具有管理员特权的用户 ID 登录到 WebSphere Integrated Solution Console(或 Administration Console)。
  2. 展开左侧的 Security 并单击 SSL certificate and key management
  3. 在右侧的 Related Items 下,单击 Key stores and certificates
  4. 假设您使用的是默认设置,单击 NodeDefaultTrustStore,然后在 Additional Properties 下,单击 Signer certificates
  5. 在新页面上,单击 Retrieve from port,然后输入以下详细信息:
从 WebSphere Application Server 获取证书的详细信息
参数描述示例值
HostDataPower 设备的主机名称mqxi50.mydomain.com
PortDataPower 设备用于通信的任何端口9090
Alias您选择用于标识证书的本地名称。datapower
  1. 输入这些值后,单击 Retrieve signer information,在操作完成时单击 OKApply
  2. 单击顶部的 Save 保存您的更改。如果接受了默认选择 Dynamically update the run time when SSL configuration changes occur,则不需要重新启动 WebSphere Application Server。
  3. 从 Administration Console 注销。

配置 Subscription Modifier

一个具有新 GEP 的新安装的 WSRR 将禁用 Subscription Notifier。但是,如果您有机会不使用新 WSRR 安装,那么 Subscription Notifier 可能已启用,因为它会由 DataPower 以外的产品使用。

  1. 导航到 WSRR Web UI,地址通常为 https://yourserver:9443/ServiceRegistry。在右上角更改为 Configuration 透视图。
  2. 在 Active Profile 菜单下,选择 Scheduler。在 Scheduler Configurations 列表中,单击 SubscriptionNotifierPluginScheduler。此页包含 Subscription Notifier 计划任务的设置。在 XML 编辑窗口中,确保 XML 类似于以下代码,尤其是粗体显示的标记:
    要更新的 Scheduler 值
    <scheduler-configuration
      xmlns="http://www.ibm.com/xmlns/prod/serviceregistry/6/1/SchedulerProperties">
        <scheduler-task name="SubscriptionNotifierPluginMessageTask">
            <type>Message</type>
            <subscriptions>
                <topic>jms/SubscriptionTopic</topic>
            </subscriptions>
            <interval>30</interval>
            <class>
            com.ibm.sr.subscriptionnotifier.plugin.SubscriptionNotifierPluginMessageTask
            </class>
            <enabled>true</enabled>
            <startTimeOffset>1</startTimeOffset>
            <intervalGranularity>seconds</intervalGranularity>  
            <startTimeOffsetGranularity>seconds</startTimeOffsetGranularity>
            <transactionality>perMessage</transactionality>
        </scheduler-task>
    </scheduler-configuration>
  3. 单击 OK 应用更改。上面的参数适合实验和用于学习本文,但不应在生产系统中如此频繁地操作计划程序,生产环境中的默认值 5 分钟更适合一些。
  4. 验证 HTTP Post Notifier 插件设置是正确的:在 Active Profile 菜单中,选择 Notifiers => Subscription Notifier
  5. 在 Subscription Notifier Configurations 列表中,单击 SubscriptionNotifierPluginConfiguration。找到以下 XML 标记,确保它没有被注释掉(XML 注释以 <!-- 开头,并以 --> 结尾):
    HTTP Post Notifier 插件设置
    <Plugin
    identifier="com.ibm.sr.subscriptionnotifier.plugin.httppost.HttpPostNotifierPlugin
    class="com.ibm.sr.subscriptionnotifier.plugin.httppost.HttpPostNotifierPlugin"
    type="httppost" />
  6. 单击 OK 应用更改。

结束语

本文介绍了如何设置 WSRR 服务器和 DataPower Appliance,从而将它们用于通信,包括如何从 WSRR 导入 SSL 证书,以及如何在 DataPower 中指定 WSRR 服务器定义。本文还介绍了如何将 DataPower SSL certificate 证书导入 WebSphere Application Server 中,并在 WSRR 中启用 Subscription Notifier。现在您已使用一个 DataPower Web Services Proxy 订阅了已在 WSRR 中注册和托管的 Web 服务。您附加到服务的任何策略会自动加载到 DataPower 中并自动实施。

参考资料

学习

讨论

条评论

developerWorks: 登录

标有星(*)号的字段是必填字段。


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件

 


在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。

所有提交的信息确保安全。

选择您的昵称



当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

标有星(*)号的字段是必填字段。

(昵称长度在 3 至 31 个字符之间)

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

 


所有提交的信息确保安全。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=WebSphere
ArticleID=853267
ArticleTitle=WebSphere Service Registry and Repository V8 与 WebSphere DataPower V5 的安全集成
publish-date=12242012