绕过Windows身份验证
我有一个配置为在集成Windows身份验证模式下运行的ASP.NET Intranet应用程序。它一直工作得很好,直到最近出现需求。绕过Windows身份验证
需要什么内联网需要检查可用性检查是一种Windows服务。检查器执行的操作是访问ASP.NET页面并检查响应对象。由于Windows服务未与域用户帐户运行,它就会
The remote server returned an error: (401) Unauthorized.
我想添加一个新的asp.net页面检查器使用的,我想告诉系统不进行身份验证它。但我相信认证发生在应用程序甚至有机会查看页面之前,应用程序代码“看到”页面之前返回401错误。
我有什么选择可以得到这个?
谢谢!
约翰
试试这个:
添加一个新的文件夹到您的网站(例如:/检查)
入/签,创建一个包含新的web.config:
<configuration>
<system.web>
<authentication mode="Windows" />
<authorization>
<allow users="?"/>
<allow users="*"/>
</authorization>
</system.web>
</configuration>
然后,您在/ Check中访问的任何内容都不应进行身份验证。
除了添加一个新文件夹,正如@GordonBell所评论的那样,您可以在根web.config文件中使用location
元素。
例子:
<location path="YourFile.aspx">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>
是的,好点。虽然这应该是允许用户=“?”为匿名。 – 2012-08-10 20:36:27
@GordonBell您的评论不够准确。 '*'表示_all users_。 '?'表示匿名用户。因此'
做了什么与你合作?我有完全相同的问题。 – Costa 2017-07-19 08:02:21