ASP.Net Membership仅允许人们在登录时访问操作

时间:2014-08-27 09:31:52

标签: c# asp.net asp.net-mvc asp.net-mvc-4 asp.net-membership

我正在学习ASP.Net成员资格,我希望能够只允许人们在登录时使用某些操作。我目前正在使用Microsoft创建的ASP.Net成员资格的默认模板一个使用MVC 4的新互联网应用程序项目。我尝试使用[Authorize]属性标记操作,但这似乎不会阻止未登录的用户查看页面。是否有一种简单的方法来实现我应该关注的这个或另一个属性?我还在寻找一种方法来重定向人们,如果他们没有登录到登录页面?

示例代码:

    [Authorize]
    public ActionResult Register()
    {
        return View();
    }

    //
    // POST: /Account/Register

    [HttpPost]
    [Authorize]
    [ValidateAntiForgeryToken]
    public ActionResult Register(RegisterModel model)

1 个答案:

答案 0 :(得分:0)

我能想到的一件事是你可能有Windows身份验证模式。

请确保您使用的是Forms Authentication

例如,

<system.web>
   ...
   <authentication mode="Forms">
      <forms loginUrl="~/Account/Login" timeout="2880"/>
   </authentication>
   ...
</system.web>