本主题解释了如何在 SOAtest 和 Virtualize 中配置并应用 XML 加密工具。出于安全目的,此工具对 XML 文档进行加密。
本章包含:
为了在 Web 服务事务期间安全地通过 Internet 发送数据,必须制定安全标准,以确保外部各方不能查看或读取任何私有事务数据。W3C 推荐的 XML 加密标准定义了一个允许对 XML 文档中的任何数据进行加密和解密的过程。它指定要加密的数据,并提供用于加密数据的密码或密钥的信息。
XML 加密工具支持来自 OASIS 的 W3C XML 加密标准和 WS-Security 标准。XML 加密工具允许对作为 Web 服务事务发送的数据进行加密和解密。XML 加密工具还允许您对 XML 文档的各个元素或整个文档本身加密。这个特性对于在多个合作伙伴或端点之间执行的 Web 服务事务特别有用。例如,信用卡事务可以在用户名和地址可见的地方进行加密,但是用户的信用卡号是加密的。
XML 加密工具允许您加密或解密数据。根据所选 Encryption Mode , Encrypt 模式 Decrypt 将有所不同。
在使用 XML 加密工具之前,必须下载强度无限的 Java 加密扩展。有关更多详情,请查阅 Unlimited Strength Java Cryptography Extension。 |
工具设置选项卡的左窗格显示以下选项:
从工具设置选项卡的左窗格选择 General 时,可使用以下选项:
WS-Security Mode:启用 OASIS WS-Security 1.0 来加密 SOAP 消息。启用此选项和 Encrypt SOAP Body (WS-Security Mode) or Entire Document (non WS-Security mode) 选项来自动加密主体元素的内容。WS-Security 模式使用非对称加密,但不允许使用密钥存储或显式密钥值。
Asymmetric(non-WS-Security):允许使用对称密钥加密数据,并使用非对称密钥加密块加密密钥。还可以选择使用密钥存储或显式密钥值。
Symmetric (non-WS-Security):只允许使用一个秘密、共享的对称密钥来直接加密数据。
Key Transport (Key Encryption):指定用于加密密钥的唯一算法。
Key Store:指定密钥加密密钥的密钥存储区。此菜单中可用的密钥存储库依赖于您在测试或响应程序套件级别添加的密钥存储库。 关于添加密匙库的更多信息,请查阅 Global Key Stores。
Symmetric (Block Encryption):指定用于加密数据的唯一算法。
Automatic Key:启用自动生成块加密密钥。
Use Key Store:指定用于对称(块加密)密钥的密钥存储区。此菜单中可用的密钥存储库依赖于您在测试或响应程序套件级别添加的密钥存储库。关于添加密匙库的更多信息,请查阅 Global Key Stores。
Explicit Key Value:根据从对称(块加密)菜单中选择的算法,输入显式密钥。
当从工具设置选项卡左窗格中选择 Target Elements 时,可使用以下选项。前提是在 General 选项卡中选择了 Encrypt :
Target: 允许选择 Entire Element 或 Content Only。
选择 Entire Element 将加密整个 XPath。
选择 Content Only 将只加密文本内容。
从工具设置选项卡的左窗格选择 Emulation Options 时,可使用以下选项:
只有在 General 选项卡中的 WS-Security Mode 选中的情况下,以下选项才可用: |
在工具设置选项卡的左窗格选择 Encryption Options 后,可使用以下选项:
在工具设置选项卡的左窗格选择 Decryption Options 后,可使用以下选项:
只有在 General 选项卡中的 Decrypt 单选按钮选中的情况下,以下选项才可用: |
Key Store:指定用于验证签名的密钥存储区。此菜单中可用的密钥存储库依赖于您在测试或响应程序套件级别添加的密钥存储库。关于添加密匙库的更多信息,请查阅 Global Key Stores。
Input Type 选项卡只有当 XML 加密工具作为独立工具(而不是链接到另一个工具)添加时才可用。在 Input Type 选项卡中有以下可用选项:
如果要将该文件的路径作为当前配置文件的相对路径来保存,则选择 Persist as Relative Path 选项。启用该选项可以更容易地在多个机器之间共享工具。如果该选项未启用,则测试或响应程序套件将把该文件路径保存为绝对路径。
您可以通过右键单击主测试套件并从快捷菜单中选择 Add New> Test ,然后从打开的对话框中选择 XML Encryption 将 XML 签名工具作为工具级别上的独立工具使用。
您可以 还可以 通过右键单击所需工具节点并从快捷菜单选择 Add Output ,然后从打开的对话框中选择 XML Encryption 将 XML 加密工具链接到工具。该工具将使用转换后的 XML。
您可以将 XML 加密工具和 XML 签名工具链接到消息传递工具,以便在消息上同时执行加密和 XML 签名。有关 XML 签名者工具的更多信息,请参见 XML 签名器。
还可以将任何工具(如编辑或浏览工具)链接到 XML Encryption Tool,方法是 通过右键单击所需的 XML Encryption Tool 节点并从快捷菜单中选择 Add Output ,然后 从打开的对话框中选择 XML Encryption
若要执行使用 XML 签名验证器、XML 签名器或 XML 加密工具或如果使用密匙库执行安全操作,那么您将需要下载并安装无限强度的 Java 加密扩展。有关更多详情,请查阅 JCE Prerequisite。 |
以下教程演示如何使用这个工具: