配置具有Windows身份验证站点中托管的匿名访问的Web服务

时间:2014-02-19 00:30:38

标签: c# asp.net web-services authentication

我的Intranet上有一个应用程序,它配置为匿名身份验证,需要使用为Windows身份验证配置的Web服务。

我已将以下部分添加到web.config文件中,以允许仅对Web服务进行匿名访问:

<location path="services/MyApi.asmx">
    <system.web>
        <authorization>
            <allow users="?" />
        </authorization>
    </system.web>
</location>

当我尝试使用匿名访问从应用程序使用Web服务时,出现以下错误:

  

请求失败,HTTP状态为401:未经授权。

以下是使用网络服务的源代码:

using (MyService.MyApi proxy = new MyService.MyApi())
{
    string employeeId = Session["EmpCode"].ToString();
    proxy.MyMethod(employeeId);
}

我需要做些什么才能解决此错误?

1 个答案:

答案 0 :(得分:0)

?中将*更改为<allow users="*" />,将允许匿名用户使用网络服务