6

我们已经在 Weblogic 10.3 上实现了 Web 服务。

我正在尝试使用 SOAP UI 客户端 (soapui.org) 测试 Web 服务。

但我收到以下错误消息:

错误 401--未经授权

错误 401--未经授权

来自 RFC 2068超文本传输​​协议——HTTP/1.1

10.4.2 401 未经授权

该请求需要用户身份验证。响应必须包含一个 WWW-Authenticate 头字段(第 14.46 节),其中包含适用于所请求资源的质询。客户端可以使用合适的授权头域重复请求(第 14.8 节)。如果请求已包含授权凭证,则 401 响应表示已拒绝对这些凭证的授权。如果 401 响应包含与先前响应相同的质询,并且用户代理已经尝试了至少一次身份验证,则应该向用户呈现响应中给出的实体,因为该实体可能包含相关的诊断信息。HTTP 访问认证在第 11 节中解释。

知道我是否需要在 SOAP UI 上进行特殊配置。

更新: 遵循 Zeger 的建议后,我进行了基本身份验证,即将用户名和密码(weblogic / weblogic)设置为 SOAP 请求的标头(在 SOAP UI 中)。但是现在我收到以下错误:

<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"> <env:Body> <env:Fault xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"> <faultcode>wsse:InvalidSecurity</faultcode> <faultstring>Error codes: 1061 2661 1028 Error code:1061</faultstring> </env:Fault> </env:Body> </env:Envelope> 
4

4 回答 4

9

可能为时已晚,无法解决原始问题,但这可能会帮助任何与我一样通过 Google 搜索来到这里的人 :)

看看http://download.oracle.com/docs/cd/E12840_01/wls/docs103/security/thin_client.html#understanding_basic_atn

默认情况下,当 Weblogic 接收到带有“Authorization=Basic ...”标头的 HTTP 请求时,它会检查提供的凭据。由于您几乎可以肯定没有为 Weblogic 配置任何安全领域或用户,因此您将得到 401 回复。

于 2011-09-27T01:38:19.057 回答
3

您的网络服务需要身份验证。因此,如果您想使用 SOAP UI 测试此服务,则需要使用 HTTP Header 传递凭据(设置标头的选项位于 SOAPUI 的低端)。

阅读更多详细信息。

于 2010-10-23T04:43:35.693 回答
0

可能您的 Web 服务需要更复杂的安全头,例如 ws 安全用户名令牌或时间戳。您在 wsdl 中看不到此标头,因此soap ui 不会为它们生成任何标签。

您可以查看:http: //download.oracle.com/docs/cd/E11035_01/wls100/webserv_sec/message.html#wp243698

于 2010-10-23T09:19:18.250 回答
0

+markl 在他的回答中有确切发生的原因...但是要在 SOAP UI 中解决此问题,您将执行以下操作:

文件->首选项-> HTTP设置

取消选中“向传出请求添加身份验证信息”框,这将允许 SOAPUI 左下角框中的“TestRequest 属性”仅填充请求的标头,而不是“基本授权”。

如果要保存这些设置,请保存首选项:

文件->保存首选项

以上说明适用于soapUI 4.0.1(但我想它适用于所有版本)

于 2012-05-24T21:16:14.310 回答