首页 > 解决方案 > 如果用户尚未登录,则将 MVC URL 重定向到登录页面

问题描述

如果用户没有登录,我想将 MVC URL 重定向到登录页面。web.config 中的以下代码适用于 WebForm URL,但不适用于 MVC URL。

   <location path="/Home/Index">
   <system.web>
  <authorization>
    <deny users = "?"/>
  </authorization>
  </system.web  
    </location>

    <system.web>
    <authentication mode="Forms">
    <forms name="MySite" loginUrl="~/Login.aspx" protection="All"  timeout="30" path="/" requireSSL="false" slidingExpiration="true"  cookieless="UseCookies"/>
     </authentication>
     <authorization>
     <allow users="?"/>
   </authorization>
    </system.web>   

标签: c#asp.net-mvc

解决方案


您可以使用此配置

<authentication mode="Forms">
      <forms loginUrl="~/Login/Login" timeout="2880" />
    </authentication>
    <authorization>
      <allow users="*"/>
      <deny users="?"/>
    </authorization>

或者您可以在控制器/操作上使用 [Authorize] 属性。


推荐阅读