使用 XPath 表达式标记使用者安全性约束中的消息元素

以下信息说明使用 XPath 表达式和使用关键字之间的差异,以指定要标记哪个消息部件:
XPath 表达式
使用 XPath 表达式来指定消息的任何部件。XPath 是一种用于描述 XML 文档各部分的语言。您可以在以下 Web 站点找到有关 XPath 语法的信息:http://www.w3.org/TR/1999/REC-xpath-19991116
关键字
使用预定义的关键字仅指定消息内的元素。
完成以下步骤,以指定需要使用 XPath 表达式来标记哪些消息部件。在以下步骤中,您必须在步骤 2 中配置客户端扩展或在步骤 3 中配置服务器端扩展。
  1. 单击窗口 > 打开透视图 > J2EE
  2. 可选: 使用“项目资源管理器”窗口找到客户端扩展。 显示“客户机部署描述符”窗口。此 Web Service 包含需要配置的扩展。完成下列步骤以找到客户端扩展:
    1. 展开“Web Service > 客户机”部分,并双击 Web Service 的名称。
    2. 单击 WS 扩展选项卡并展开“响应使用者配置”部分。
  3. 可选: 使用“项目资源管理器”窗口找到服务器端扩展。 显示“Web Service 编辑器”窗口。此 Web Service 包含需要配置的扩展。 完成以下步骤以找到服务器端扩展:
    1. 展开“Web Service > 服务”部分,并双击 Web Service 的名称。
    2. 单击扩展选项卡,并展开“请求使用者服务配置详细信息”部分。
  4. 展开“必需的完整性”部分。 完整性是指数字签名,而机密性是指加密。完整性可减少数据在网络中传输时被修改的风险。有关数字签名简单对象访问协议(SOAP)消息的更多信息,请参阅 XML 数字签名
  5. 单击添加以表明要为数字签名验证哪些消息部件。 显示“必需的完整性”对话窗口。完成以下步骤以指定配置:
    1. 在“必需的完整性名称”字段下指定完整性元素的名称。
    2. 在“用法类型”字段中指定用法类型。 此字段指定完整性元素的需求。此属性的值是必需的或可选的。
      必需
      如果您选择必需,并且未标记必需的消息部件或元素,则会因 SOAP 故障而拒绝该消息。
      可选
      如果您选择可选,则在标记所选消息部件或元素的情况下验证它们的数字签名。但是,如果未标记所选消息部件或元素,则使用者不拒绝该消息。
  6. 在“必需的完整性对话”窗口的“消息部件”部分下单击添加 完成以下步骤,以指定消息部件方言及其消息部件:
    1. 从“必需的完整性对话”窗口的“消息部件”部分中选择“消息部件方言”。 如果您选择 http://www.w3.org/TR/1999/REC-xpath-19991116 方言,则由 XPath 表达式指定为数字签名验证的消息部件。
    2. 在“消息部件关键字”字段中使用 XPath 表达式指定要为数字签名验证的消息部件。 例如,要指定检查消息体以确定是否标记它,您可以在“消息部件关键字”字段中在一连续行上添加以下表达式:
      /*[namespace-uri()='http://schemas.xmlsoap.org/soap/envelope/' and local-name()='Envelope']/*
      [namespace-uri()='http://schemas.xmlsoap.org/soap/envelope/' and local-name()='Body']
      要点: 验证您的 XPath 语法是否正确。
  7. 单击确定以保存配置更改。
    注: 使用者和生成者的这些配置必须匹配。
在您指定为数字签名检查哪些消息部件之后,必须指定使用哪种方法来验证签名。有关更多信息,请参阅为使用者绑定配置签名信息
相关概念
XML 数字签名
相关任务
在使用者安全性约束中添加独立时间戳记
使用关键字在使用者安全性约束中添加完整性的时间戳记
使用关键字在使用者安全性约束中添加完整性的现时标志
为使用者绑定配置签名信息

反馈