流利的安全自定义策略



我在MVC5应用程序中使用流利的安全性。我创建了一个称为surecteportalrole()的自定义策略。出于测试目的,我总是返回成功。

我的安全配置如下

            configuration.ForAllControllers().DenyAnonymousAccess();
            configuration.For<AccountController>(x => x.LogOn()).Ignore();
            configuration.For<HomeController>().AddPolicy(new RequirePortalRole());

由于useverportalrole()始终返回policyResult.createsuccessresult(this);我希望我可以访问家庭控制器上的任何内容,但是除了帐户控制器中的登录操作外,别无其他。自定义策略似乎没有乘坐ForallController策略。

任何想法为什么不呢?我实际上是在家庭控制器上应用两个策略吗?

策略被添加,每个请求都会执行每个策略。我认为,如果您想访问HomeController上的所有内容,则应明确删除该策略:

        configuration.For<HomeController>()
            .RemovePolicy<DenyAnonymousAccessPolicy>()
            .AddPolicy<RequirePortalRole>();

我希望我有正确的问题。

最新更新