0

我有一个 ASP.NET MVC4 应用程序,我希望通过 web.config 中的设置轻松启用/禁用 AccountController。因为我想注册和登录一段时间,然后公开。我只是有点不确定最好的方法。

非常感谢

4

2 回答 2

1

有一个关于这个主题的现有 StackOverflow 问题,其中一个自定义属性值应用于控制器,它从 web.config 读取一个值并允许使用控制器或 404s,我不确定你正在寻找什么因为,但它可能会引导你走向正确的方向。

另一种可能性是 URL 重写。

这是另一个 SO 问题:有条件地禁用 ASP.NET MVC 控制器

于 2013-06-14T15:56:35.027 回答
0
<system.web>
  <!-- anonymous usage -->
  <authentication mode="None"></authentication>
  <!-- Forms login -->
  <!--<authentication mode="None">
    <forms ... />
  </authentication>-->
</system.web>

那是你要找的吗?请注意,这不会“禁用”AccountController,但会使它变得微不足道,因为身份验证将被有效地禁用。但是,这取决于如何编写站点,以显示登录/注销按钮或在允许时在页面上不显示凭据处理。

您可能可以根据提供的身份验证模块创建AuthorizeAttrbiute检查Context.User.Identity.AuthenticationType和允许/拒绝访问的扩展web.config(然后将该属性应用于AccountController您想要限制的(和任何其他操作) when mode="None"

于 2013-06-14T15:49:06.170 回答