【发布时间】:2013-05-05 08:58:00
【问题描述】:
我正在尝试创建一个匿名控制器以实现表单身份验证。我为我的 IIS 7 配置了匿名和表单身份验证启用,并将我的 web.config 设置为 deny 匿名用户。在登录控制器上,我将 [AllowAnonymous] 装饰放在我的控制器(和我的操作)上。
我可以在这组配置上获得的唯一操作是登录操作(它返回“登录”视图),我猜 MVC 允许我获取此操作,因为我将其设置为登录 URL在我的 web.config 上。
这是我的网络配置配置:
<authentication mode="Forms">
<forms loginUrl="~/Login/Login" timeout="2880" />
</authentication>
所有其他操作都重定向到登录操作。在这组配置上,我无法实现其他重要操作,例如恢复密码、注册等。
我做错了什么?
【问题讨论】:
-
您不能全局拒绝 - 密码恢复或注册必须匿名访问。
-
那么我需要改变什么?如果我允许匿名访问,那么所有站点都可以访问,并且 MVC 不会将未经身份验证的用户重定向到登录操作。
标签: c# asp.net-mvc-4 form-authentication