使用 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. 展开“机密性”部分。 机密性是指加密,而完整性是指数字签名。机密性可减少在网络中传递消息时被其他人拦截的风险。采用机密性规范时,在发送消息之前将对消息进行加密,而期望的目标接收到该消息之后再对它进行解密。有关加密的更多信息,请参阅 XML 加密
  5. 单击添加以指定机密性的时间戳记。 显示“机密性”对话窗口。完成以下信息以指定配置:
    1. 在“机密性名称”字段中指定机密性元素的名称。
    2. 在“顺序”字段中指定顺序。 该值必须是正整数值,指定处理加密的顺序。如果顺序值为 1,则表示先进行加密。
  6. 在“机密性对话”窗口的“时间戳记”部分下单击添加。完成以下步骤以配置时间戳记信息:
    1. 从“时间戳记”部分选择时间戳记方言。 http://www.w3.org/TR/1999/REC-xpath-19991116 方言指定使用 XPath 表达式对哪个消息部件进行加密。
    2. 在“时间戳记关键字”字段中指定使用 XPath 表达式添加并加密时间戳记的消息部件。 例如,要指定时间戳记添加到 bodycontent 元素并加密该时间戳记,您可以在“时间戳记关键字”字段中在一连续行上添加以下表达式:
      /*[namespace-uri()='http://schemas.xmlsoap.org/soap/envelope/' and local-name()='Envelope']/*
      [namespace-uri()='http://schemas.xmlsoap.org/soap/envelope/' and local-name()='Bodycontent']
    3. 在“时间戳记到期”字段中为时间戳记指定到期时间。 时间戳记有助于防护重放攻击。持续时间的词法表示法是 [ISO 8601] 扩展格式 PnYnMnDTnHnMnS,其中:
      P
      在日期和时间值之前。
      nY
      代表时间戳记有效的年份数。选择 0 到 99 年份的值。
      nM
      代表时间戳记有效的月份数。选择 0 到 11 月份的值。
      nD
      代表时间戳记有效的天数。选择 0 到 30 天的值。
      T
      区分日期和时间值。
      nH
      代表时间戳记有效的小时数。选择 0 到 23 小时的值。
      nM
      代表时间戳记有效的分钟数。选择 0 到 59 分钟的值。
      nS
      代表时间戳记有效的秒数。秒数可以包括任意精度的小数位数。您可以选择 0 到 59 秒和 0 到 9 毫秒的值。

      例如,要表示 1 年、2 个月、3 天、10 小时及 30 分钟,格式是:P1Y2M3DT10H30M。通常,您可以配置 10 和 30 分钟之间的消息时间戳记。例如,10 分钟表示为 P0Y0M0DT0H10M0S

  7. 在“消息部件”部分中,单击添加并在“消息部件方言”字段中选择 http://www.ibm.com/websphere/webservices/wssecurity/dialect-was。
  8. 在“消息部件”部分中,选择消息部件关键字。
    要点: 在“消息部件”部分中必须至少定义一个消息部件,以便指定机密性的时间戳记。此处消息部件的选择除了用于加密时间戳记的父元素外,还用于加密消息部件
  9. 单击确定以保存配置更改。
    注: 使用者和生成者的这些配置必须匹配。
在指定要对哪些消息部件进行加密之后,必须指定使用哪种方法来对消息进行加密标记。有关更多信息,请参阅为生成者绑定配置加密信息
相关任务
使用 XPath 表达式将机密性的现时标志添加到生成者安全性约束
为生成者绑定配置加密信息
使用关键字将机密性的现时标志添加到生成者安全性约束

反馈