【发布时间】:2016-05-06 19:26:29
【问题描述】:
我正在尝试查看 ASP.net5 中是否有“开箱即用”的东西来授权我的应用程序需求。我正在使用基于组/权限的方法进行授权。使用 Identity3 我使用角色作为组,然后我从中创建了权限。每个权限都有一个链接到的资源和 1 个或多个值,例如:
资源 = 页面,权限 = 添加、更新、查看、删除
另一个复杂之处是组具有动态名称和动态权限!!
我已经开始阅读 ASP.net5 中的授权,并且似乎找到了一个叫做 Policies 的东西,听起来不错。这似乎迫使您使用 Claims,如果我使用 ClaimsTransformer 来获取我的所有权限并将它们添加为来自 Db 的声明,这是可能的。但是我是否认为我必须为每个权限、每个资源创建一个策略?这似乎是很多设置。
有什么我不知道的东西已经内置在 ASP.net5 中我可以使用吗?像这样的属性
[Authorize("Page", "Delete")]
我可以添加到 PageController Delete 方法中。
如果我必须在控制器中使用某种服务和 DI 来实现这一点,那也可以。
【问题讨论】:
-
在 asp.net 中。除了位置和文件夹结构之外,它们没有任何变化,是的,一些新的东西,如启动、cs 文件,但 mvc 工作流程中的核心功能没有任何变化。所以请再次查看所有代码和参考。如果一切正常,它将起作用。
标签: c# asp.net asp.net-mvc asp.net-core asp.net-core-mvc