本主题提供信息来帮助识别 IRIS
数据平台中 SOAP
问题的原因。
有关明显与安全相关的问题的信息,请参阅故障排除安全问题。在极少数情况下, SOAP
客户端会使用 HTTP
身份验证,请注意,可以启用身份验证的日志记录;请参阅发送 HTTP
请求中的提供登录凭据。
要确定 SOAP
问题的原因,通常需要以下信息:
WSDL
及其引用的所有外部文档。Option | Usable with SSL/TLS? | Shows HTTP | headers? Comments |
---|---|---|---|
InterSystems IRIS SOAP log | Yes | Optionally | 对于安全错误,此日志显示的详细信息比 SOAP 故障中包含的更多。 |
Web Gateway trace | Yes | Yes | 对于使用 MTOM (MIME 附件)的 SOAP 消息问题,查看 HTTP 标头至关重要。 |
Third-party tracing tools | No | Depends on the tool | 一些跟踪工具还显示较低级别的详细信息,例如实际发送的数据包,这在进行故障排除时至关重要。 |
以下小节将讨论这些选项。
正确处理故障也非常有用,这样就可以收到最好的信息。请参阅 SOAP
故障处理。
要记录对 IRIS
命名空间发出的 SOAP
调用,请按照此处所述启用 SOAP
日志记录。
重要提示:SOAP
日志非常庞大,因此应仅在需要时启用它并尽快禁用它。有关详细信息,请参阅下面的说明。
set ^ISCSOAP("LogFile")=filename set ^ISCSOAP("Log")=optionstring
optionstring
指定要包含在日志中的数据类型。使用以下区分大小写值的组合: i
— 记录传入消息。o
— 记录传出消息。s
— 记录安全信息。请注意,此选项提供的详细信息比 SOAP
故障中通常包含的信息更详细,SOAP
故障故意含糊其辞,以防止后续的安全攻击。h
— 仅记录 SOAP
标头。必须将 h
与 i
和/
或 o
组合使用。将 h
与 i
结合使用时,日志仅包含入站消息的 SOAP
Envelope
和 Header
元素。同样,将 h
与 o
结合使用时,日志仅包含出站消息的 SOAP Envelope
和 Header
元素。不会记录相应的 SOAP Body
元素。H
— 记录 HTTP
标头。必须将 H
与 i
和/
或 o
组合使用。将 H
与 i
组合使用时,日志将包含入站消息的 HTTP
标头。同样,将 H
与 o
组合使用时,日志将包含出站消息的
HTTP标头。除了记录任何
SOAP数据外,还会记录
HTTP 标头。可以使用包含这些值的任意组合的字符串,例如:“iosh
”
filename
是要创建的日志文件的完整路径和文件名。日志会根据需要指示发送者或接收者,以便可以看到哪个 Web
服务或客户端参与了交换。
下面显示了日志文件的部分示例,其中添加了换行符以方便阅读:
01/05/2022 13:27:02 ********************* Output from web client with SOAP action = https://www.mysecureapp.org/GSOAP.AddComplexSecureWS.Add ... **** Output HTTP headers for Web Client User-Agent: Mozilla/4.0 (compatible; InterSystems IRIS;) Host: hostid Accept-Encoding: gzip **** Input HTTP headers for Web Client HTTP/1.1 200 OK CACHE-CONTROL: no-cache CONTENT-ENCODING: gzip CONTENT-LENGTH: 479 CONTENT-TYPE: application/soap+xml; charset=UTF-8 ... 01/05/2022 13:27:33 ********************* Input to web client with SOAP action = https://www.mysecureapp.org/GSOAP.AddComplexSecureWS.Add ERROR #6059: Unable to open TCP/IP socket to server devsys:8080 string
请注意以下几点:
XML
工具,可以验证已签名的 XML
文档的签名并解密加密的 XML
文档。如果在此命名空间中执行这些任务,则日志也会包含这些任务的详细信息。请参使用 XML
工具。IRIS SOAP
日志也会捕获 SOAP
调用。SOAP
日志。请参阅消息日志。有关信息,请参阅监控日志文件。CheckLogging
任务每晚运行一次,如果 SOAP
日志记录保留时间过长(默认情况下为 2
天),则会发出警报。由于 SOAP
日志量很大,因此注意此警报非常重要。