在模块化系统mvc 4中使用流畅的安全性

时间:2013-04-15 10:05:23

标签: security asp.net-mvc-4 authorization fluent-security

我在我的解决方案中有一个名为app_ui的MVC应用程序作为启动项目,在解决方案中有一些其他应用程序作为模块。然后在启动项目中,我通过路由表访问模块及其操作。我使用fluentsecurity进行授权,并在Global.asax中为app_ui中的控制器配置它,一切正常。但对于模块中的控制器和操作,我无法将配置添加到流畅的安全性,并想知道如何为它们添加设置策略。

1 个答案:

答案 0 :(得分:0)

您可以使用FluentSecurity 2.0(beta1)中的配置文件执行此操作!以下是文档的链接:https://github.com/kristofferahl/FluentSecurity/wiki/Profiles

1)在模块中创建个人资料

public class AdminAreaSecurityProfile : SecurityProfile
{
    public override void Configure()
    {
        For<UserAdminController>().RequireRole(UserRole.Administrator)
        For<BlogAdminController>().RequireRole(UserRole.Editor)
    }
}

2)从主应用程序中扫描配置文件

SecurityConfigurator.Configure(configuration =>
{
    configuration.GetAuthenticationStatusFrom(() => HttpContext.Current.User.Identity.IsAuthenticated);

    configuration.Scan(scan =>
    {
        scan.AssembliesFromApplicationBaseDirectory();
        scan.LookForProfiles();
    });
});