如果用户尚未登录,则将MVC URL重定向到登录页面

时间:2019-02-16 09:05:25

标签: c# asp.net-mvc

如果用户尚未登录,我想将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>   

2 个答案:

答案 0 :(得分:1)

这对我有用

<authentication mode="Forms">
  <forms defaultUrl="/Booking/Index" loginUrl="/Login/Index" slidingExpiration="true" timeout="2880"></forms>
</authentication>

答案 1 :(得分:0)

您可以使用此配置

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

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