使用 WebSphere Service Registry and Repository 和 WebSphere DataPower 执行 SOA 消息安全策略
集成 WebSphere Service Registry and Repository 和 WebSphere DataPower
概述
现代企业间通信已经发生演变,规模和复杂性已增加到了一定的程度,以至于企业消息流的管理和治理极面临严峻而又艰难的挑战。这些消息流代表着巨大的收入来源,因此必须使用强大的工具加以谨慎处理。尽管如此,这些企业仍然必须将策略落实到位,以保护关键资产和维持标准的商业活动。
许多企业都在寻求可扩展的方法,以确立并执行管理其面向 SOA 通信系统的面向业务的策略。Web 服务策略标准和机制旨在满足这些需求。
WebSphere 提供了两种产品来共同交付使用 WS-Policy 标准设置和执行业务策略的能力,这两种产品是 WebSphere Registry and Repository 和 WebSphere DataPower SOA 设备。
本教程将演示如何结合使用这两种产品来实现以下业务策略:
- 必须签署针对某个给定企业应用程序的所有请求。
- 必须加密企业应用程序返回的所有响应。
下面是本教程中提出的解决方案架构的一个示意图。
图 1. 解决方案架构

业务经理可以在注册表内设置业务策略。而 DataPower 设备需要获取必需的配置信息,以便在实时消息流中执行相应策略。
配置注册表
本教程将展示如何使用 WSRR 版本 7.5 中可用的功能对 DataPower 设备配置进行自动更新。注册表的配置步骤与 WSRR 版本 6.2 及更高版本的配置步骤相同。
通过配置注册表开始实现这一策略执行架构。注册表的配置包括以下三个基本步骤:
- 上传描述要外部化企业服务的 WSDL
- 上传描述要实现的策略的文件
- 在注册表内创建一个返回 WSDL 的保存搜索
上传 WSDL
上传描述后端企业服务的 WSDL,然后登录到 WSRR 控制台。请执行以下这些步骤:
- 单击 Load Documents。
图 2. 加载文档

- 从您的本地文件系统加载
Echo.wsdl
文件。
图 3. 加载文件路径

- 单击 Service Documents 区域中的 WSDL Documents,确认新的 WSDL 文件可用。请注意,注册表根据文件名 (Echo.wsdl) 和命名空间 (http://ibm.com/was/wssample/sei/echo/) 识别文件。
图 4. WSDL 清单

上传策略文件
现在基本的 WSDL 已经到位,且可供任何 DataPower 设备访问,是时候上传描述要执行的业务策略的策略文件了。以下是 wsp-sp-1-1-sign-parts.xml
策略文件的内容。
清单 1 wsp-sp-1-1-sign-parts.xml 策略文件
<?xml version='1.0' encoding='UTF-8'?> <wsp:Policy xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:sp="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200512" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/ oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="wsp-sp-1-1-sign-parts"> <dpe:summary xmlns="" xmlns:dpe="http://www.datapower.com/extensions"> <dppolicy:domain xmlns:dppolicy="http://www.datapower.com/policy"> http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200512 </dppolicy:domain> <description> Implements WS Security Policy 1.1 - support SignedParts </description> </dpe:summary> <wsp:ExactlyOne> <wsp:All> <sp:SignedParts> <sp:Body/> </sp:SignedParts> </wsp:All> </wsp:ExactlyOne> </wsp:Policy>
在本例中,文件表达必须签署所有 SOAP 消息的主体部分的策略。请注意,这在请求消息和响应消息之间没有什么差别。该文件可从 DataPower 设备的 store:/// 目录中获取。注意,您可以将这些文件复制到一个 local:/// 目录,并根据需要修改它们。
通过以下步骤将该文件上传到注册表。
- 单击页面顶部的 Load Documents。
- 确认策略文件在您本地文件系统上的位置。
- 从 Document Type 下拉列表中选择 Policy。
- 单击 OK,然后会出现以下面板。
图 5. 用于加载清单的文档

- 单击 Finish。您会看到上传成功的确认。
接下来,必须将表达加密相关策略的文件上传到注册表。步骤与之前的上传步骤非常类似。
- 单击页面顶部的 Load Documents。
- 确认策略文件在您本地文件系统上的位置。
- 从 Document Type 下拉列表中选择 Policy。
- 单击 OK。出现以下面板。
图 6. 用于加载清单的文档

- 单击 Finish。
现在有了基本的策略表达,必须将描述如何将策略绑定到 WSDL 的文件上传到设备。
注意,WSDL 文件不是根据文件名 (Echo.wsdl) 识别的,而是根据命名空间 (http://ibm.com/was/wssample/sei/echo/) 进行识别。如果在注册表中加载了多个带有这个目标命名空间的 WSDL 文件,策略可能会被附加到一个与您期望使用的不同的 WSDL 文件。
注意,Policy Reference 是指分配给文件中策略的 wsu:Id ("wsp-sp-1-1-encrypted-parts-body"),而非包含该 ID 的文件。
下图展示 Policy Attachment 文件如何连接 WSDL 和基本策略表达。
图 7. WSDL 文件和基本策略表达之间的连接

用与上传其他策略文件相同的方式上传 Policy Attachment 文件。
- 单击页面顶部的 Load Documents。
- 确认策略文件在您本地文件系统上的位置。
- 从 Document Type 下拉列表中选择 Policy。
- 单击 OK。此时出现以下面板。
图 8. Policy Attachment 文件

- 单击 Finish。您会看到上传成功的确认。
企业业务策略表明,必须签署所有请求,且必须加密所有响应。我们的 Policy Attachment 文件仅表达两个条件之一。刚才上传的 Attachment 文件仅处理签署的请求;对于加密的响应,还另外需要一个 Policy Attachment 文件。
遵循与之前相同的程序。
- 单击页面顶部的 Load Documents。
- 确认策略文件在您本地文件系统上的位置。
- 从 Document Type 下拉列表中选择 Policy。
- 单击 OK。出现以下面板。
图 9. Policy Attachment 文件

- 单击 Finish。您会看到上传成功的确认。
这就完成了所有必需策略文件的上传。通过列出可用的 Policy 文档,您可以确认两个 Policy Attachment 文件现在都在注册表中可用。
图 10. 策略附件文档清单

要确认 WSRR 得到正确解析并将策略应用到 WSDL 文件,打开注册表内的 WSDL 文件。为此,返回到 Home 界面并显示 WSDL 文档。这会显示以下界面:
图 11. WSDL 文件的细节

单击 Policy 选项卡。此时会出现以下界面。
图 12. 策略内容

注意 echoOperationRequest
和 echoOperationResponse
消息下的策略表达。这可以确认注册表得到正确解析并将策略语句应用到 WSDL。当设备从注册表获取这个 WSDL 时,这就是 DataPower 设备会收到的内容。
创建一个保存搜索
要在注册表中创建一个保存搜索,首先需要在注册表内创建一个查询(或搜索)。
下面是创建保存搜索的步骤。
- 返回到 Home 界面。单击左边菜单上的 Queries 条目旁边的箭头。
图 13. Queries 条目

- 单击链接,启动 Query Wizard。
- 从下拉列表中选择 WSDL Documents。您的界面应当类似于如下:
图 14. WSDL 文档

- 单击 Next。
- 在查询细节页面上显示的 Name 字段中指定 WSDL 的名称,如下所示。
图 15. WSDL 名称

- 单击 Next。
- 然后查询细节汇总出现,如下所示。
图 16. WSDL 查询细节

- 单击 Finish。这会促使查询执行并返回结果。该查询仅返回所需的 WSDL。
图 17. 保存查询

- 在 Save this
Search 下为这个搜索输入一个名称(比如
GetEchoWSDL
)。该名称将用于配置 DataPower 订阅对象。 - 单击 Save。
这就完成了注册表的配置。
配置 WebSphere DataPower 设备
DataPower 设备上的一个 Web Service Proxy 服务可以从一个 WSRR Saved Search(比如上面配置的那一个)获取其配置信息。与 DataPower 固件版本 4.0.1.0 和 WSRR 版本 7.5 一样,DataPower 设备还可以在注册表中保存的 WSDL 被更新时自动更新该信息。该特性支持即时更新设备,而无需经过轮询间隔(可能长达几天)。本节将详细介绍配置 Web Service Proxy 来使用 Automatic Update 特性以及 Saved Search Subscription 所需的步骤。
为了启用自动更新特性,首先需要调整设备的 XML 管理界面的配置。为此,首先切换到设备的默认域,然后遵循以下步骤。
- 从导航菜单中选择 Network > Management > XML Management Interface。
- 选中 WSRR Subscription 框,如下所示。注意,如果您没有使用固件 4.0.1.0,该框不会出现。
图 18. WSRR 订阅选项

- 单击 Apply。
现在返回到您将用于构建服务的应用程序域(通常不是默认域)。
通过单击控制面板上的 Web Service Proxy 图标开始配置服务。
- 单击任何现有 Web Service Proxy 对象的列表下的 Add 按钮。显示 Web Service Proxy 配置流程的第一页。
- 在提供的字段中输入新代理的名称。
- 单击 Create Web Service Proxy。出现代理的 WSDL 配置页面。
图 19. 创建 Web Service Proxy

- 单击 WSRR Saved Search Subscription。
出现一组空字段,如下所示。
图 20. WSRR Server

- 在 New 字段中输入 Echo。这是 Subscription 对象的名称。
- 单击 WSRR Server 下的 + 按钮。这会打开一个新窗口,可用它来显示用于创建新 WSRR Server 对象的窗体。
- 如下图所示配置 WSRR Server 对象。
图 21. WSRR Server 对象

注意,SOAP URL,Username 和 Password 的正确值会随环境而变化。WSRR Server Version 必须是 7.5 或更高版本 才能支持自动更新(而非轮询)。该版本必须是 6.2 或更高才能支持保存搜索订阅。
- 单击 Find a Saved Search。这促使设备联系注册表并获取一个包含所有可用保存搜索的列表。
图 22. Find a Saved Search

- 从列表中选择
GetEchoWSDL
并单击 Apply。 - 从 Synchronization Method 下拉列表中选择
Automatic
(WSRR 7.5 或更高版本
)。当存储在 WSRR 服务器上的 WSDL 变化时,注册表会自动通知 DataPower 设备有一个较新版本可用,且 DataPower 设备会从注册表中获取它,期间可能更改代理提供的服务。注意,要使用该选项,还需要修改设备的 XML Management Interface 的配置,如前所述。 - 单击 WS-Policy Parameter Set 下的 + 按钮。由于将该代理设置为执行 WSDL 中包含的策略(注意 WS-Policy Enforcement Mode),代理将需要各组密钥和凭据来验证请求中包含的签名,并且如果响应消息没有加密的话就对其进行加密。
- 配置 Parameter Set,如下所示。
图 23. 参数集

注意,对于所有三个条目来说,Parameter Name 和 Parameter Value 一样的;只有 Policy Domain 有些变化。虽然可以仅使用一个 Policy Domain 条目来达到执行目标,但是使用全部三个条目可确保设备不会在参数集和 WSDL 之间遇到命名空间问题。如果您仅使用一个 Policy Domain,它必须与 Policy 文件中用到的命名空间相匹配。
注意,您将需要创建一组密钥(公共证书和匹配的私有密钥)来完成这一配置。您可以创建这些对象,方法就是从 Parameter Name 下拉列表中选择 Encryption Certificate
,然后单击 Parameter Value 下的 + 按钮。
仅包含这些 Encryption Certificate
条目的一个 Parameter Set 可提供代理执行策略所需的所有信息。
您也可以选择性地添加一些其他参数,让代理忽略请求中包含的签名中的时间戳。如果时间戳未被忽略,签名会在 5 分钟内到期。下图展示这些参数的添加。
图 24. Policy 参数

- 参数集完成时单击 Submit。
代理服务的配置页面现在看起来类似于下图。
图 25. 代理服务配置

- 单击 Next。代理现在会联系 WSRR 服务器并获取 Saved Search Subscription 返回的任何 WSDL。然后会为您提供建立 Front Side Handler 和调整目标 URL 所需的输入。
- 从可用处理程序列表中选择一个现有的 Front Side Handler 或单击 + 按钮来创建一个新的处理程序。这个新处理程序应当使用 HTTP 协议,除了启用的默认值之外,还必须支持 HTTP GET 请求。
图 26. 前端处理程序

- 单击 Apply 创建或修改 Front Side Handler。
- 在 URI 下的字段中键入
/echo
。 - 单击 Edit/Remove 下的 Add。
- 调整 Remote 属性,以连接到目标服务器。该位置会随您的环境而变化。提供正确响应的 XML 防火墙服务的完整配置包含在下载文件中。
图 27. 本地端点处理程序

- 单击 Next。代理服务现在会使用 Policy 参数集完成服务的配置。代理应当准备好接受请求了。
图 28. 配置 Web 服务代理

- 通过从 Web Service Proxy 服务检索 WSDL 来确认代理是否包含 Policy 语句。方法就是在浏览器中发出一个类似的下面的 URL:
http://DP_addr:3110/echo?wsdl
这会检索 WSDL。下面是这个 WSDL 的最后一部分,其中 Policy Attachment 被正确地应用到请求和响应消息。
清单 2 请求和响应消息
<wsdl:binding name="EchoSOAP" type="ns0:EchoServicePortType"> <soap11:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/> <wsdl:operation name="echoOperation"> <soap11:operation soapAction="echoOperation" style="document"/> <wsdl:input name="echoOperationRequest"> <wsp:PolicyReference URI="#policy1"/> <soap11:body use="literal"/> </wsdl:input> <wsdl:output name="echoOperationResponse"> <wsp:PolicyReference URI="#policy0" /> <soap11:body use="literal"/> </wsdl:output> </wsdl:operation> </wsdl:binding>
- 通过单击代理的 WSDL 页面上的 WSDL Status 下的 Okay,检查 Saved Search Subscription 的状态。
图 29. 保存搜索的状态

- 向服务提交一个签署的请求文件。一个 Curl 命令将类似于:
curl –data-binary @echo-signed
http://DP_addr:3110/echo
响应应当加密,如下所示。
图 30. 命令响应

检查该事务的调试日志,其中显示代理查找和验证请求中包含的签名的时间点。如果未找到签名,代理会拒绝该请求,并返回错误消息 "Rejected by Policy"。
11:02:06 multistep info 487360 request 9.32.115.47 0x80c00002 wsgw (RegistryPolicy): rule (message-input_127_5-req): #2 filter: 'INPUT store:///verify.xsl' completed OK. 11:02:06 multistep debug 487360 request 9.32.115.47 0x80c0004e wsgw (RegistryPolicy): Stylesheet URL to compile is 'store:///verify.xsl'
下面是显示代理将加密应用到未加密的响应消息的条目。
11:02:06 multistep info 487360 response 9.32.115.47 0x80c00002 wsgw (RegistryPolicy): rule (message-output_127_6-process-resp): #4 filter: 'enc-output store:///required-elements-filter.xsl' completed OK. 11:02:06 multistep debug 487360 response 9.32.115.47 0x80c0004e wsgw (RegistryPolicy): Stylesheet URL to compile is 'store:///required-elements-filter.xsl' 11:02:06 multistep info 487360 response 9.32.115.47 0x80c00002 wsgw (RegistryPolicy): rule (message-output_127_6-process-resp): #3 Conditional on INPUT completed OK. 11:02:06 multistep info 487360 response 9.32.115.47 0x80c00002 wsgw (RegistryPolicy): rule (message-output_127_6-process-resp): #2 xform: 'Transforming INPUT with http://127.0.0.1:63502/DocumentCryptoMap.xml?objDomain=Ryan& objName=message-output_127_6-1-conditional-content-encrypt-2-enc-enc-cryptomap results stored in enc-output' completed OK. 11:02:06 multistep debug 487360 response 9.32.115.47 0x80c0004e wsgw (RegistryPolicy): Stylesheet URL to compile is 'http://127.0.0.1:63502/DocumentCryptoMap.xml?objDomain=Ryan& objName=message-output_127_6-1-conditional-content-encrypt-2-enc-enc-cryptomap'
诊断
WS-Proxy 生成与许多订阅操作相关的提示性消息。下面是代理生成的与订阅和自动通知相关的一些日志条目。
下面是与 WSRR 服务器的初始注册交换:
09:51:16 wsrr notice 69503 0x810000c8 wsrr-saved-search-subscription (Echoer): WSRR subscriber registered using ws-proxy RegistryPolicy 09:51:16 wsrr notice 69503 0x810000c9 wsrr-saved-search-subscription (Echoer): WSRR subscriber unregistered using ws-proxy RegistryPolicy
以下订阅是通过 WSRR 服务器创建的(默认域日志):
10:46:56 wsrr info 101668 0x81000451 Resolving 'wsrr://WSRR25/376a0c37-eafa-4ac1.bef4.660fd266f4cc/#wsp-sp-1-1-encrypted-parts-body'. 10:46:56 wsrr info 101668 0x81000451 Resolving 'wsrr://WSRR25/081ecd08-4c2b-4b32.9183.2b884d2b837c/#wsp-sp-1-1-sign-parts'. 10:46:56 wsrr info 101668 0x81000451 Resolving 'wsrr://WSRR25/8e42008e-125c-4cc4.bb24.147558142425/'. 10:46:56 wsrr info 66257 0x810004d0 wsrr-saved-search-subscription (Echoer): The subscription 'Echoer' contains '1' WSDL files. 10:46:56 wsrr debug 66257 0x810004ef wsrr-saved-search-subscription (Echoer): Setting WSRR Event Notification bsrURI '0c12ef0c-baca-4aaf.aa37.a4581ca4373a'. 10:46:56 wsrr debug 69663 0x810004ce The subscription 'Echoer' is creating the PolicyReference 'wsrr://WSRR25/376a0c37-eafa-4ac1.bef4.660fd266f4cc/#wsp-sp-1-1-encrypted-parts-body' for the WSDL with bsrURI '8e42008e-125c-4cc4.bb24.147558142425'. 10:46:56 wsrr debug 69663 0x810004cd The subscription 'Echoer' is creating the AppliesTo URI 'http://ibm.com/was/wssample/sei/echo/#wsdl11.message(echoOperationResponse)' for the WSDL with bsrURI '8e42008e-125c-4cc4.bb24.147558142425'. 10:46:56 wsrr debug 69663 0x810004cc The subscription 'Echoer' is creating a PolicyAttachment for the WSDL with bsrURI '8e42008e-125c-4cc4.bb24.147558142425'. 10:46:56 wsrr debug 69663 0x810004ce The subscription 'Echoer' is creating the PolicyReference 'wsrr://WSRR25/081ecd08-4c2b-4b32.9183.2b884d2b837c/#wsp-sp-1-1-sign-parts' for the WSDL with bsrURI '8e42008e-125c-4cc4.bb24.147558142425'. 10:46:56 wsrr debug 69663 0x810004cd The subscription 'Echoer' is creating the AppliesTo URI 'http://ibm.com/was/wssample/sei/echo/#wsdl11.message(echoOperationRequest)' for the WSDL with bsrURI '8e42008e-125c-4cc4.bb24.147558142425'. 10:46:56 wsrr debug 69663 0x810004cc The subscription 'Echoer' is creating a PolicyAttachment for the WSDL with bsrURI '8e42008e-125c-4cc4.bb24.147558142425'. 10:46:56 wsrr info 69663 0x810004cb The subscription 'Echoer' has a WSDL with bsrURI '8e42008e-125c-4cc4.bb24.147558142425' and '2' policy attachments. 10:46:56 wsrr info 69663 0x8100044d The subscription 'Echoer' of type Saved-Search contains the WSDL 'Echo.wsdl' with bsrURI '8e42008e-125c-4cc4.bb24.147558142425' and location 'Echo.wsdl'. 10:46:55 wsrr debug 69663 0x810004e6 The subscription 'Echoer' creating a WSRR Notification Event for 'GetEchoWSDL' with bsrURI '7ee5467e-0bb0-40ef.9b3d.567bf4563d6c', Fetch Policy 'true', Notify IP '9.70.154.57', Notify Port '5550', and renewal interval '1'. 10:46:55 wsrr info 69663 0x810004e2 The subscription 'Echoer' is creating a WSRR Notification Event for 'GetEchoWSDL' of type 'saved-search' with bsrURI '7ee5467e-0bb0-40ef.9b3d.567bf4563d6c'. 10:46:55 wsrr notice 69503 0x810000c8 wsrr-saved-search-subscription (Echoer): WSRR subscriber registered using ws-proxy RegistryPolicy
在这里,我们可以看到已将新 WSDL 纳入代理配置中:
11:37:54 ws-proxy info 91567 0x81000081 wsgw (RegistryPolicy): Adding new wsdl '8e42008e-125c-4cc4.bb24.147558142425'.
下面是应用程序域日志中的一个更新通知条目:
11:37:54 ws-proxy info 91567 0x8100007c wsgw (RegistryPolicy): Process update from subscription Echo for wsdl wsrr://WSRR25/8e42008e-125c-4cc4.bb24.147558142425/, service key 8e42008e-125c-4cc4.bb24.147558142425.
下面是默认域中一个更新通知的日志条目:
图 31. 更新通知

如果订阅由于 WSRR 上的一个变更(比如删除保存搜索)或 DataPower 设备上的一个变更而变得无效,应用程序域中的日志条目如下所示:
10:41:23 wsrr warn 65121 0x810000fc wsrr-saved-search-subscription (Echoer): WSRR subscription Echoer fail to retrieve files from server 10:41:23 wsrr error 65121 0x810004f2 wsrr-saved-search-subscription (Echoer): Encountered an error while creating Automatic Subscription. 10:41:23 wsrr debug 65121 0x810004f6 wsrr-saved-search-subscription (Echoer): WSRR Event Notification bsrURI cleared. 10:41:23 wsrr error 69663 0x8100044f Failed to fetch WSDL, Concept, or Saved Search 'GetEchoWSDL0' from http://9.70.155.25:9080/WSRR/6.2/Metadata/XML/Query/GetEchoWSDL0. 10:41:23 network error 69663 0x80e00040 url-open: Remote error on url 'http://9.70.155.25:9080/WSRR/6.2/Metadata/XML/Query/GetEchoWSDL0'
当错误得到纠正后,您会再次看到出现订阅初始化序列,如上所示。
管理版本
端点服务常常随客户端对它们的使用而演化,通过变更来满足客户需求,提供新功能,或维持与标准的兼容性。这种变更通常需要修改描述服务的 WSDL 文件。使用自动更新的订阅的一个主要好处在于,每当描述端点服务的 WSDL 变更时,会自动更新绑定到这些订阅的 DataPower 服务。当服务功能发生变化时,WSDL 会变更,并且新版本的 WSDL 会被加载到 WSRR 服务中。
WSRR 服务不像常规做法那样重写现有文件。因此,当现有 WSDL 的一个新版本被加载到 WSRR 中时,注册表中会存在具有相同名称和命名空间的两个 WSDL 版本。下面就是一个示例:
图 32. WSDL 命名空间副本

取决于 WSDL 文档名称的一个已经保存的搜索查询会同时返回已加载的 WSDL 的两个版本。DataPower 设备将仅使用它获得的第一个版本,这可能是两个版本中的任意一个。
使用 WSRR 管理版本有多种方法。
- 添加新的 WSDL 版本并删除旧版本。WSRR 检测这一变更并向 DataPower 设备发送通知,接着该设备会获取新的 WSDL 版本。
- 使用分类。可以为注册表中的每个项目进行分类,并基于分类值执行搜索。下图展示向 WSDL 指派分类的细节。
图 33. WSRR 分类细节

参见左下角的 Classifications 属性。WSRR 包含一个标准的治理模型,旨在管理资产的生命周期。注意该图解顶部的 Governance 选项卡。搜索可以基于标准生命周期分类之一,而非下面显示的一个自定义分类。
下面是 Query Wizard 面板,允许您为某个搜索条件选择要使用的分类。
图 34. WSRR 分类

- 使用 WSDL 文档的其他属性来区分版本。这可以包含自定义属性,您可以与使用分类差不多的方式使用自定义属性。下面是一个示例。
图 35. 区分 WSDL 版本

SearchKey 属性是添加到 WSDL 记录的一个自定义属性。
结束语
运行于 DataPower 设备之上的 Web Service Proxy 可以有效地执行企业建立的业务策略,并通过配置注册表表达这些策略。所有经过配置可以使用 Saved Search Subscription 的 WS Proxy 服务都会自动收到相同的配置。
这一产品组合能够让企业在一个地方确立业务策略,并自动在许多地方实现和执行该策略。由于 DataPower 设备通过订阅自动刷新自身,企业可以轻松改变策略,这一变更会自动传播到 DataPower 执行点。
下载资源
- 本文样例文件 (EchoPolicyFiles.zip | 2.4KB)
相关主题
- 以最适合您的方式 评估 IBM 产品:下载产品试用版,在线试用产品,在云环境下使用产品,或者在 SOA Sandbox 中花费几个小时来学习如何高效实现面向服务架构。
- IBM developerWorks 中国 WebSphere 专区:为使用 WebSphere 产品的开发人员准备的技术信息和资料。这里提供产品下载、how-to 信息、支持资源以及免费技术库,包含 2000 多份技术文章、教程、最佳实践、IBM Redbook 和在线产品手册。
- 最受欢迎的 WebSphere 试用软件下载:下载关键 WebSphere 产品的免费试用版。