调整 V9.0 应用程序的 Web Service 安全性

Java™ 密码术扩展 (JCE) 已集成到软件开发包 (SDK) V1.4.x 和更高版本中。该包不再是可选软件包。 但是,随 SDK 交付的缺省 JCE 管辖区域策略文件允许您使用密码术来强制实施此缺省策略。另外,可以修改 Web Service 安全性配置选项以获取 Web Service 安全性保护应用程序的最佳性能。

关于此任务

使用不受限制的 JCE 策略文件

由于导出和导入规则,与 SDK 一起提供的缺省 JCE 权限策略文件使您只能使用强大但受限的密码术。要执行此缺省策略,WebSphere® Application Server 使用可能会影响性能的 JCE 权限策略文件。 缺省 JCE 权限策略可能对受 Web Service 安全性支持的加密功能有性能影响。如果您具有使用传输级安全性进行 XML 加密或数字签名的 Web Service 应用程序,那么可能会在 WebSphere Application Server 的前发行版中遇到性能降级的情况。 但是,IBM® 和 Oracle 公司提供这些权限策略文件的版本,它们对密码强度没有限制。如果您受政府的进出口规则的允许,那么下载这些权限策略文件中的某个文件。在下载这些文件中的某个文件后,JCE 和 Web Service 安全性的性能可能会提高。

避免故障 避免故障: 包括软件开发包 (SDK) 更新的修订包可能会覆盖不受限制的策略文件和 cacerts 文件。在应用修订包之前先备份不受限制的策略文件和 cacerts 文件,然后在应用修订包之后再次应用这些文件。这些文件位于 {was_install_directory}\java\jre\lib\security 目录中。gotcha
要点: 您的产地国对加密软件的进口、拥有、使用或再次出口到其他国家可能有一些限制。下载或使用未限制的策略文件之前,必须检查您的国家或地区的法律、规章以及对加密软件进行进口、拥有、使用和再次出口的相关政策,从而确定是否可以使用该文件。
对于使用 IBM Developer Kit, Java Technology Edition V6 的 WebSphere Application Server 平台来说,可通过完成以下步骤获取无限制的权限策略文件:
  1. 访问以下 Web 站点:http://www.ibm.com/developerworks/java/jdk/security/index.html
  2. 单击 Java SE 6
  3. 向下滚动并单击 IBM SDK 策略文件

    这将显示 SDK Web 站点的无限制的 JCE 策略文件。

  4. 单击登录并提供 IBM 内部网标识和密码或向 IBM 注册,以下载文件。
  5. 选择适当的无限制的 JCE 策略文件,然后单击继续
  6. 查看许可协议,然后单击我同意
  7. 单击立即下载

[IBM i]要为 IBM i 和 IBM 软件开发包配置非受限权限策略文件,请完成以下步骤:

[IBM i]

过程

  1. 备份以下文件:
    /QIBM/ProdData/Java400/jdk6/lib/security/local_policy.jar
    /QIBM/ProdData/Java400/jdk6/lib/security/US_export_policy.jar
  2. http://www.ibm.com/developerworks/java/jdk/security/index.html 中的非受限策略文件下载到 /QIBM/ProdData/Java400/jdk6/lib/security 目录中。
  3. 访问以下 Web 站点:http://www.ibm.com/developerworks/java/jdk/security/index.html
    1. 单击 Java SE 6
    2. 向下滚动并单击 IBM SDK 策略文件 这将显示 SDK Web 站点的无限制的 JCE 策略文件。
    3. 单击登录并提供 IBM 内部网标识和密码。
    4. 选择适当的无限制的 JCE 策略文件,然后单击继续
    5. 查看许可协议,然后单击我同意
    6. 单击立即下载
  4. 使用 DSPAUT 命令以确保 *PUBLIC 已被授予 *RX 数据权限,但未将该对象权限提供给 /QIBM/ProdData/Java400/jdk6/lib/security 目录中的 local_policy.jarUS_export_policy.jar 文件。 例如:
    DSPAUT OBJ('/qibm/proddata/java400/jdk6/lib/security/local_policy.jar')
  5. 必要时使用 CHGAUT 命令更改权限。 例如:
    CHGAUT OBJ('/qibm/proddata/java400/jdk6/lib/security/local_policy.jar') 
    USER(*PUBLIC) DTAAUT(*RX) OBJAUT(*NONE)
[AIX Solaris HP-UX Linux Windows]

结果

执行这些步骤后,将有两个 Java 归档 (JAR) 文件放在 JVM jre/lib/security/ 目录中。

使用配置选项来调节 WebSphere Application Server

使用 WS-Security 对 WebSphere Application Server 中的 SOAP 消息进行消息级别保护时,选择配置选项可能会影响应用程序的性能。以下准则将帮助您获取 WS-Security 保护的应用程序的最佳性能。
  1. 合适时,将 WS-SecureConversation 用于 JAX-WS 应用程序。 将对称密钥与安全对话配合使用通常比将非对称密钥与 X.509 配合使用有更好的性能。
    注: 仅支持将 WS-SecureConversation 用于 JAX-WS 应用程序,而不支持用于 JAX-RPC 应用程序。
  2. 使用 WebSphere Application Server 提供的标准令牌类型。支持使用定制令牌,但通过使用提供的令牌类型可获得更好的性能。
  3. 对于签名,仅使用独有的规范化变换算法。请参阅 W3 推荐 Web 页面 (http://www.w3.org/2001/10/xml-exc-c14n#) 以获取更多信息。
  4. 可能时,避免使用 XPath 表达式来选择要保护哪些 SOAP 消息部件。随 JAX-WS 应用程序的 WebSphere Application Server 一起提供的 WS-Security 策略使用 XPath 表达式来指定保护安全性头中的一些元素,例如时间戳记、SignatureConfirmation 和 UsernameToken。使用这些 XPath 表达式将优化性能,但其他方面的使用无法优化性能。
  5. 虽然 WS-Security 的一些 Websphere Application Server 扩展可用于在签署或加密消息部件之前将现时标志和时间戳记元素插入 SOAP 消息部件中,但您应避免使用这些扩展来提高性能。
  6. 可以将 WS-Security 加密元素的基本 64 位编码的 CipherValue 作为 MTOM 附件进行发送。对于小的加密元素,可通过避免此选项来获取最佳性能。 对于较大的加密元素,可通过使用此选项来获取最佳性能。
  7. 在 SOAP 消息中签署和加密元素时,将顺序指定为先签署,后加密。
  8. 将时间戳记元素添加到消息时,应将时间戳记添加到安全性头中的签名元素之前。在 WS-Security 策略配置中,通过使用 StrictLaxTimestampFirst 安全性头布局选项可完成此操作。
  9. 对于 JAX-WS 应用程序,请使用基于策略的配置,而不是基于 WSS API 的配置。

下一步做什么

在 IBM WebSphere Application Server V6.1 和更高版本中,Web Service 安全性支持使用加密硬件设备。可以两种方式将硬件加密设备与 Web Service 安全性配合使用。请参阅Web Service 安全性的硬件加密设备支持,以了解更多信息。


指示主题类型的图标 任务主题



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