Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 表单身份验证的正确IIS 6配置_Asp.net_Configuration_Iis 6_Security - Fatal编程技术网

Asp.net 表单身份验证的正确IIS 6配置

Asp.net 表单身份验证的正确IIS 6配置,asp.net,configuration,iis-6,security,Asp.net,Configuration,Iis 6,Security,我正在当前的ASP.NET Web应用程序(不是MVC)中使用表单身份验证,并且我的IIS 6服务器配置了以下选项: 在[directory security tab]->[Authentication Methods]中,我有: 已启用匿名访问 已启用集成windows身份验证 上述选项是否会阻止表单身份验证正常工作?换句话说,表单身份验证的正确IIS 6配置是什么 编辑 我刚刚在启用上述两个选项的情况下进行了测试,表单身份验证会话已过期,并将我重定向到登录页面,但到目前为止,所有答案都建

我正在当前的ASP.NET Web应用程序(不是MVC)中使用表单身份验证,并且我的IIS 6服务器配置了以下选项:

在[directory security tab]->[Authentication Methods]中,我有:

  • 已启用匿名访问
  • 已启用集成windows身份验证
上述选项是否会阻止表单身份验证正常工作?换句话说,表单身份验证的正确IIS 6配置是什么

编辑


我刚刚在启用上述两个选项的情况下进行了测试,表单身份验证会话已过期,并将我重定向到登录页面,但到目前为止,所有答案都建议关闭[集成windows身份验证]

由于表单身份验证不依赖于IIS身份验证,因此如果要在ASP.NET应用程序中使用表单身份验证,则应在IIS中为应用程序配置匿名访问


有关更多信息,请参见此处。

应启用匿名访问,我不认为集成windows身份验证有什么区别,但如果您不需要,最好将其关闭。要记住的重要一点是确保在web.config中打开它:

<authentication mode="Forms" />

匿名访问->已检查 “安全性”选项卡上的所有其他选项->未选中

注意,表单身份验证由.NET完成,而不是由IIS完成。此外,Windows身份验证也必须关闭


这是一份关于在IIS6上使用ASP.NET表单身份验证的检查表

配置IIS:

在IIS中,站点属性->目录安全->身份验证和访问控制

  • 启用匿名访问
  • 禁用所有经过身份验证的访问方法

配置表单身份验证:

在站点的
web.config
中配置表单身份验证:

<authentication mode="Forms">
  <forms name="MySite" 
         path="/" 
         loginUrl="~/logon.aspx" 
         protection="All" 
         timeout="30"
         slidingExpiration="true" />
</authentication>

谢谢,换句话说,在使用表单身份验证时,应该关闭[集成windows身份验证]!对。还要确保James提到的AuthenticationOn标签是正确的。另一件事你需要确保你有。这将拒绝任何用户,从而自动重定向到身份验证标签中提到的登录页面。过期需要多长时间?如果您在登录后尝试过检查cookies,您可以使用Firebug(在Firefox中)或IE开发者工具栏(点击F12)。您是否已将标签配置为允许(以及拒绝)访问包含您的页面的文件夹?如我所愿,30分钟后,yes标签可能已配置,并且上述两个选项均已启用!!!
<sessionState mode="InProc" timeout="40" />