【问题标题】:How to disable security for an Action in ASP.NET MVC?如何在 ASP.NET MVC 中禁用操作的安全性?
【发布时间】:2010-09-06 17:43:44
【问题描述】:

我的要求是匿名用户只能访问登录页面和注册页面。 我已经使用VS2008中的默认模板创建了一个新的ASP.NET MVC项目。

之后我启用了安全性,将此部分添加到网络配置中:

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

由于启用了安全性,现在无法再访问注册操作。如何仅禁用该操作的安全性?

谢谢

【问题讨论】:

    标签: asp.net asp.net-mvc-2 forms-authentication


    【解决方案1】:

    我建议您使用[Authorize] 属性来控制哪些操作/控制器需要身份验证,而不是使用web.config。这样,如果您决定修改路由,您的授权规则就不太容易出错。

    【讨论】:

      【解决方案2】:

      您需要在控制器操作上使用Authorize 属性来限制控制器或操作级别的访问:

      http://msdn.microsoft.com/en-us/library/system.web.mvc.authorizeattribute.aspx

      【讨论】:

        【解决方案3】:

        在 ASP.NET MVC 4 的上下文中:您可以使用控制器类上的 Authorize 属性启用授权,然后使用 AllowAnonymous 属性禁用特定操作。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-08-28
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-12-18
          • 2020-05-03
          相关资源
          最近更新 更多