表单身份验证无法按预期工作

时间:2011-09-01 12:20:56

标签: asp.net authentication web-config forms-authentication authorization

我第一次尝试使用表单身份验证。这就是我在web.config中的内容:

<authentication mode="Forms">
  <forms loginUrl="Login.aspx" name="Login" slidingExpiration="true" timeout="30" path="/">
  </forms>
</authentication>
<authorization>
  <allow users="*" />
</authorization>

我正在处理的网站实际上并不需要任何身份验证,因为无需登录就可以访问该页面。这就是为什么我允许所有用户。我对此非常陌生,所以可能有一些明显我做错了,但所有页面似乎都重定向到Login.aspx,即使我允许所有用户。

非常感谢所有帮助。感谢。

更新 作为一个答案,我将代码更改为以下(更改为*?)但我仍然遇到同样的问题:

<authorization>
  <allow users="?" />
</authorization>

2 个答案:

答案 0 :(得分:2)

Asterisk代表任何经过身份验证的用户,该用户不包含匿名用户。使用问题允许匿名用户:

<allow users="?" />

答案 1 :(得分:0)

我来到这个页面遇到同样的问题,并且看到5年后这个问题从未得到正确解答..你需要在web.config中指定以下内容:

 <authorization>
     <deny users="?" />
     <allow users="*" />
 </authorization>

意味着您拒绝访问所有匿名用户,并允许访问所有经过身份验证的用户。