使用Windows身份validation在ASP.NET应用程序的子文件夹上禁用身份validation

是否有可能使用Windows身份validation禁用ASP.net应用程序的一个或多个子文件夹上的Windows身份validation?

例如:

一个网站包含几个其他文件夹,其中包含整个应用程序的一部分:/前端,/后端,/login

bin文件夹与这些子文件夹(即网站的根目录)处于同一级别。

所有这些子文件夹都包含使用驻留在网站根目录的bin文件夹中的二进制文件的页面。

用户在访问后端文件夹中的页面时必须inputWindows凭据,而不是在login或前端文件夹中访问页面时inputWindows凭据。

我正在使用IIS7

有任何想法吗?

Solutions Collecting From Web of "使用Windows身份validation在ASP.NET应用程序的子文件夹上禁用身份validation"

找到了解决办法:

  • 调整applicationHost.config文件,并将anonymousAuthentication和windowsAuthentication节条目的“overrideModeDefault”更改为“Allow”

    <section name="anonymousAuthentication" type="System.Webserver.Configuration.AnonymousAuthenticationSection" overrideModeDefault="Allow" /> <section name="windowsAuthentication" type="System.Webserver.Configuration.WindowsAuthenticationSection" overrideModeDefault="Allow" /> 
  • 在web.config中为每个需要从Windows身份验证中排除的文件夹/文件添加位置标签

      <location path="pathToDirOrFile"> <system.webserver> <security> <authentication> <anonymousAuthentication enabled="true" /> <windowsAuthentication enabled="false" /> </authentication> </security> </system.webserver> </location> 
  • 确保这些文件夹中的每一个都包含一个单独的web.config文件,用于禁用身份模拟

      <configuration> <system.web> <identity impersonate="false" /> </system.web> </configuration> 

NTLM身份验证通常在IIS中配置,因此您可以切换回这些文件夹的匿名身份验证。

替代文字