Windows身份验证和表单身份验证
问题描述:
我有一个asp.net网站,我需要同时使用Windows身份验证和匿名身份验证。Windows身份验证和表单身份验证
我需要Windows身份验证,因为我需要获取登录用户的用户名,而且该网站运行的Web服务必须匿名访问。
如果我打开Windows身份验证我可以得到用户,这工作正常,但网站调用Web服务返回401错误。如果我也添加了匿名访问,那么使用Web服务的网站可以正常工作,但我无法再获取登录用户的用户名。
我该如何获得最好的 - 即获取用户名,但不杀死我的web服务。
答
您可以添加以下到您的目录树
<location path="path.to.web.service">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>
内禁止访问特定位置,同时保持主网站下的Windows身份验证的控制。
酷 - 在听起来像一个完整的小白的风险,应path.to.web.service是什么格式? – Ben
目录/ service.asmx或只是service.asmx为你可能 – ChrisBint
图例 - 谢谢克里斯。 – Ben