使用ClaimsAuthorizeAttribute
( .net4.5 )我可以定义所需的资源和操作:
[ClaimsAuthorize("View", "Administration")]
我还可以为更精细的权限添加多个属性
[ClaimsAuthorize("View", "Person")]
[ClaimsAuthorize("Edit", "Settings")]
但在CheckAccess
方法中我有两个分隔的集合,它们没有任何关系。
public override bool CheckAccess(AuthorizationContext context)
{
所以我知道有“查看”和“编辑”,另一方面是“人”和“设置”
但我不知道这是否意味着
“查看人员”或“查看设置”也不是
“编辑人物”或“编辑设置”
如何处理?
我是否以不应该使用的方式使用资源和行动?(。net 4.5)
答案 0 :(得分:4)
ClaimsAuthorize
不是.NET 4.5的一部分 - 也许你的意思是IdentityModel
中的我的版本;)
如果您有两个属性,例如方法 - 您将两次调用ClaimsAuthorizationManager
。你看到了不同的东西吗?
然后行动与资源之间存在明确的关系。