基于web.config设置禁用asp.net MVC4中的帐户控制器
我有一个ASP.NET MVC4应用程序,我希望通过web.config中的设置轻松启用/禁用AccountController。因为我想注册和登录一段时间,然后向公众开放。我只是有点不确定最好的方法 非常感谢基于web.config设置禁用asp.net MVC4中的帐户控制器,asp.net,asp.net-mvc,Asp.net,Asp.net Mvc,我有一个ASP.NET MVC4应用程序,我希望通过web.config中的设置轻松启用/禁用AccountController。因为我想注册和登录一段时间,然后向公众开放。我只是有点不确定最好的方法 非常感谢 <system.web> <!-- anonymous usage --> <authentication mode="None"></authentication> <!-- Forms login --> &
<system.web>
<!-- anonymous usage -->
<authentication mode="None"></authentication>
<!-- Forms login -->
<!--<authentication mode="None">
<forms ... />
</authentication>-->
</system.web>
根据web.config
中提供的身份验证模块检查并允许/拒绝访问(然后将该属性应用于AccountController
(以及任何其他操作),当mode=“无”时,您要限制该属性
关于此主题,存在一个现有的StackOverflow问题,其中一个自定义属性值应用于控制器,该属性从web.config读取一个值,并允许使用控制器或404s,我不确定这是否正是您要寻找的,但它可能会引导您朝着正确的方向前进
另一种可能是URL重写
这里是另一个SO问题:感谢您的快速响应。我有以下代码来禁用登录功能。但我确实希望禁用仍然可以访问的注册/登录等URL。在global.asax中,我有:if(Convert.ToBoolean(System.Configuration.ConfigurationManager.AppSettings[“PswProtect”]){filters.Add(new System.Web.Mvc.AuthorizeAttribute());}我不确定这是否是最好的主意,因为这将影响任何应用了Authenticate属性的控制器。@user1863802:请参阅我的更新以获得答案。您可以使用AuthenticationType
与继承的AuthorizeAttribute
结合使用,并且非常接近您要查找的内容。抱歉,我是指授权一个星期五在WebForms和MVC之间切换的次数太多了。哈哈