通过SOAP使用Web服务时“访问被拒绝”

时间:2011-07-26 20:50:10

标签: asp.net web-services soap iis-7.5 windows-server-2008-r2

我创建了一个.NET 3.5 Web服务应用程序项目,该项目将在Windows Server 2008 R2服务器上的IIS 7.5下托管。

我可以从整个网络中同一服务器和其他服务器上托管的ASP.NET应用程序中使用该服务,而不会出现任何问题。当另一名员工尝试使用SOAP协议使用该服务时,他们会收到以下错误:

  

XML解析器在linenumber 0,lineposition 0处失败,原因是:Access   被拒绝。

身份验证配置设置为集成Windows身份验证,消费者在尝试使用服务时需要提供服务帐户的凭据。

是否有其他人遇到过这个问题,他们知道如何解决这个问题吗?

更新

在与我的同事和供应商的客户服务部门讨论使用我的网络服务后,他们发现他们的INVOKE SOAP步骤存在局限性。根据供应商的说法:

  

Invoke SOAP对象无法解释包含In / Out的WSDL   WSDL消息定义包含相同部分的参数   输入的名称和输出消息以及相同的数据类型。

Web服务API包含一个名称相同的方法和输出参数。如果您在浏览器中查看Web服务方法,它在响应中具有以下结构:

<soap:Body>
    <MyServiceResponse>
        <MyServiceResponse>
            <property>...

现在的问题....这是使用SOAP协议时的常见行为还是仅限于供应商的产品如何解析SOAP消息?

1 个答案:

答案 0 :(得分:0)

这似乎是供应商特定的弱点,而不是SOAP规范问题。他们可能有一个半实现的SOAP堆栈。