我试图在ASP.NET MVC应用程序中实现基于声明的安全性。我计划使用ClaimsPrincipalPermission类来验证基于资源/操作对的访问。在WIF中实现自定义声明的正确方法是什么?
例如
[ClaimsPrincipalPermission(SecurityAction.Demand, Operation="Read", Resource="Invoices")]
[ClaimsPrincipalPermission(SecurityAction.Demand, Operation="Create", Resource="Fees")]
所以现在我需要自定义声明来验证我的操作/资源对。我有不同的资源,所有这些资源都有CRUD操作。
这就是我心目中的定制要求:每个资源
((ClaimsIdentity)incomingPrincipal.Identity).AddClaim(new Claim("http://mysoftware.com/identity/claims/invoices", "Read"));
或
((ClaimsIdentity)incomingPrincipal.Identity).AddClaim(new Claim("http://mysoftware.com/identity/claims/fees", "Create"));
((ClaimsIdentity)incomingPrincipal.Identity).AddClaim(new Claim("http://mysoftware.com/identity/claims/fees", "Read"));
因此,基本上,一个要求类型和要求值可以被读取的组合/创建/更新/删除。这是对使用CRUD权限的系统实施定制声明的正确方法吗?我应该以不同的方式做吗?
谢谢!
看来被引用的项目已被弃用。你对MVC5/.net 4.6.1推荐什么方法? – user210757