如何在asp.net MVC中添加一个继承自动身份验证的页面

时间:2017-09-08 12:19:19

标签: c# asp.net-mvc entity-framework authentication

我在ASP.net MVC中使用自动创建的身份验证,我在创建网站时选择了个人用户帐户。我也有一些模型,我使用一个名为“带有视图的MVC 5控制器,使用EntityFramework”的选项自动重新创建控制器和视图。我的问题是,我可以直接访问控制器而无需登录网站,我也需要对这些视图进行身份验证。我是否需要添加一些代码行:

public class myclass : IdentityUser {}

控制器中的任何东西?

1 个答案:

答案 0 :(得分:0)

通过[Authorize]属性强制执行身份验证。您将此属性放在控制器类或操作上。

向所有视图添加身份验证的快速简便方法是全局注册authorize属性。您可以在FilterConfig类中执行此操作,如下所示:

public class FilterConfig
{
    public static void RegisterGlobalFilters(GlobalFilterCollection filters)
    {
        filters.Add(new AuthorizeAttribute());
    }
}

然后在Global.asax.cs Application_Start()中你这样称呼它: FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);

现在每个控制器都需要身份验证。如果您需要允许匿名访问特定控制器或操作,则可以添加[AllowAnonymous]属性。