Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
基于web.config设置禁用asp.net MVC4中的帐户控制器_Asp.net_Asp.net Mvc - Fatal编程技术网

基于web.config设置禁用asp.net MVC4中的帐户控制器

基于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 --> &

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

非常感谢


<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之间切换的次数太多了。哈哈