这篇文章已经过机器翻译.放弃
Web 服务互操作性检查
Web 服务互操作性 (WS-I) 检查会检查请求和响应是否符合 WS-I 标准,并阻止那些不遵守此标准的请求和响应。WS-I 检查的目的是阻止可能无法与其他 XML 正确交互的请求。攻击者可以使用互操作性中的不一致性来启动对 XML 应用程序的攻击。
如果使用向导或 GUI,则在“修改 Web 服务互操作性复选”对话框中的“常规”选项卡上,可以启用或禁用“阻止”、“日志”、“统计信息”和“学习”操作。
如果使用命令行界面,则可以输入以下命令来配置 Web 服务互操作性检查:
set appfw profile <name> -xmlWSIAction [block] ][log] [learn] [stats] [none]
若要配置单个 Web 服务互操作性规则,必须使用 GUI。在“修改 Web 服务互操作性复选”对话框的“检查”选项卡上,选择一个规则,然后单击“启用”或“禁用”以启用或禁用该规则。您还可以单击打开以打开该规则的“Web 服务互操作性详细信息”消息框。消息框显示有关规则的只读信息。您不能修改或对这些规则进行其他配置更改。
WS-I 检查使用 WS-I 基本配置文件 1.0 中列出的规则。WS-I 提供了开发可互操作的 Web 服务解决方案的最佳实践。WS-I 检查仅在 SOAP 消息上执行。
下面提供了每个 WSI 标准规则的说明:
规则 | 说明 |
---|---|
BP1201 | 消息正文应该是一个带命名空间的 soap:envelope。 |
R1000 | 当 ENVELOPE 是故障时,soap:Fault 元素不得包含除了 faultcode、faultstring、faultactor 和 detail 之外的元素子元素。 |
R1001 | 当 ENVELOPE 是故障时,soap:Fault 元素的元素子元素必须是非限定的。 |
R1003 | Receiver 必须接受具有任意数量限定或非限定属性(包括零)出现在细节元素上的错误消息。限定属性的命名空间可以是限定文档元素 Envelope 的命名空间以外的任何内容。 |
R1004 | 当 COVELOPE 包含故障码元素时,该元素的内容必须是 SOAP 1.1 中定义的错误代码之一(如有必要在详细信息元素中提供其他信息),或者是其命名空间由错误的指定权限控制的 Qname(按该优先顺序排列)。 |
R1005 | ENVELOPE 不得在命名空间与限定文档元素 Envelope 的命名空间相同的任何元素上包含 soap:encodingStyle 属性。 |
R1006 | ENVELOPE 不得包含 soap:Body 的任何元素上的 soap:encodingStyle 属性。 |
R1007 | 在 rpc-literal 绑定中描述的 ENVELOPE 不得包含属于 soap:Body 的任何元素上的 soap:encodingStyle 属性。 |
R1011 | ENVELOPE 不得有 soap:Body 元素后面的 soap:Envelope 的任何元素子集。 |
R1012 | 消息必须序列化为 UTF-8 或 UTF-16。 |
R1013 | 包含 soap:mustUnderstand 属性的 ENVELOPE 只能使用词法形式 0 和 1。 |
R1014 | ENVELOPE 中的 soap:Body 元素的子元素必须是命名空间限定的。 |
R1015 | 如果 Receiver 遇到文档元素不是 soap:Envelope 的 envelope,则必须生成错误。 |
R1031 | 当 COVELOPE 包含故障码元素时,该元素的内容不得使用 SOAP 1.1 点表示法来优化错误的含义。 |
R1032 | ENVELOPE 中的 soap:Envelope、soap:Header 和 soap:Body 元素不得具有与限定文档元素 Envelope 相同的命名空间中的属性。 |
R1033 | ENVELOPE 不应包含命名空间声明:xmlns:xml=http://www.w3.org/XML/1998/namespace.
|
R1109 | 在 HTTP 请求消息中 SOAPAction HTTP 头字段的值必须是引号的字符串。 |
R1111 | 实例应对包含非故障 envelope 的响应消息使用 200 OK HTTP 状态代码。 |
R1126 | 如果响应信封为故障,则实例必须返回 500 内部服务器错误 HTTP 状态代码。 |
R1132 | HTTP 请求消息必须使用 HTTP POST 方法。 |
R1140 | 应使用 HTTP/1.1 发送消息。 |
R1141 | 消息必须使用 HTTP/1.1 或 HTTP/1.0 发送。 |
R2113 | ENVELOPE 不得包含 soapenc:arrayType 属性。 |
R2211 | 使用 rpc-literal 绑定描述的 ENVELOPE 不得具有值为 1 或 true 的 xsi:nil 属性。 |
R2714 | 对于单向操作,实例不得返回包含信封的 HTTP 响应。具体而言,HTTP 响应实体主体必须为空。 |
R2729 | An ENVELOPE described with an rpc-literal binding that is a response MUST have a wrapper element whose name is the corresponding wsdl:operation name suffixed with the stringResponse. |
R2735 | 使用 rpc-literal 绑定描述的 ENVELOPE 必须将参数的部分访问器元素和返回值放在没有命名空间中。 |
R2738 | 一个 ENVELOPE 必须包含在用于对其进行描述的 wsdl:binding 的 wsdl:operation 的 wsdl:input 或 wsdl:output 上指定的所有 soapbind:header。 |
R2740 | 描述中的 wsdl:binding 应该包含描述每个已知故障的 soapbind:fault。 |
R2744 | HTTP 请求消息必须包含一个 SoapAction HTTP 头字段,其引号值等于 soapbind:operation 的 SoapAction 属性的值(如果存在于相应的 WSDL 描述中)。 |
本内容的正式版本为英文版。部分 Cloud Software Group 文档内容采用了机器翻译,仅供您参考。Cloud Software Group 无法控制机器翻译的内容,这些内容可能包含错误、不准确或不合适的语言。对于从英文原文翻译成任何其他语言的内容的准确性、可靠性、适用性或正确性,或者您的 Cloud Software Group 产品或服务沿用了任何机器翻译的内容,我们均不作任何明示或暗示的保证,并且适用的最终用户许可协议或服务条款或者与 Cloud Software Group 签订的任何其他协议(产品或服务与已进行机器翻译的任何文档保持一致)下的任何保证均不适用。对于因使用机器翻译的内容而引起的任何损害或问题,Cloud Software Group 不承担任何责任。
Web 服务互操作性检查
已复制!
失败!