我想看看 ASP.net5 中是否有一些“开箱即用”的东西来授权我的应用程序需要。我正在使用基于组/权限的方法进行授权。使用 Identity3 我将 Role 用作 Group,然后我从中创建了权限。每个权限都有一个它链接到的资源和 1 个或多个值,例如:
资源 = 页面,权限 = 添加、更新、查看、删除
另一个复杂的问题是组具有动态名称和动态权限!!
我已经开始阅读有关 ASP.net5 中的授权的内容,似乎我找到了一个叫做 Policies 的东西,听起来不错。它似乎迫使您使用声明,如果我使用 ClaimsTransformer 获取我的所有权限并将它们添加为来自 Db 的声明,这是可能的。但是我认为我必须为每个资源的每个权限创建一个策略是否正确?这似乎有很多设置。
有什么我不知道的东西已经内置在我可以使用的 ASP.net5 中了吗?喜欢这样的属性
[Authorize("Page", "Delete")]
我可以将其添加到 PageController Delete 方法。
如果我必须在 Controller 中使用某种服务和 DI 来实现它,那也很好。
最佳答案
有一个ClaimsPrincipalPermissionAttribute可以满足您的要求。
或者您可以实现自己的 AuthorizeAttribute .
关于c# - ASP.net5 中的授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35078114/