当前位置: 首页 > 知识库问答 >
问题:

角色和声明之间的差异[重复]

锺离俊雄
2023-03-14

在我们的系统中,我们有一种设置用户权限的方法。他们创建一个组名,例如Admin,然后为他们想要执行的任务分配所有权限。

例如,他们可以添加AddCompany、ViewCompany、DeleteCompany和EditCompany

这使得创建不同的权限组变得非常容易,并且我们可以非常容易地控制安全性。

在这个实例中,组名=角色,每个权限都是一个声明,我这样想对吗?

共有2个答案

张逸清
2023-03-14

角色是声明,但并非所有声明都是角色。

在基于声明的授权系统中,您可以使用角色作为权限,但也可以使用其他东西。在我当前的项目中,我们有一个从角色到权限的多对多映射。

邵轶
2023-03-14

基于角色的授权用于将用户分组为组(角色),然后对角色而不是单个用户设置权限。

E、 g:在您的情况下,您可以创建管理员角色并提供执行“AddCompany、ViewCompany、DeleteCompany、EditCompany”任务的权限。

在这种情况下,通过一组较小的角色更容易管理一组较大的用户。这是最常用的身份验证模型。

基于声明的授权为您的授权策略提供了额外的抽象层。此外,声明是一种提供关于用户而非用户组的信息的方法。您创建授权策略,用于根据用户提供的身份验证证据生成声明集。然后,用户向应用程序提交声明,以便访问资源。

主张是一个主体对自己或另一个主体的陈述。例如,该语句可以是关于名称、身份、密钥、组、特权或能力。声明由提供者发布,它们被赋予一个或多个值,然后被打包在由发布者发布的安全令牌中,通常称为安全令牌服务(STS)

资源 : http://msdn.microsoft.com/en-gb/library/ff649821.aspx

http://msdn.microsoft.com/en-gb/library/ff649821.aspx

http://msdn.microsoft.com/en-gb/library/ff359101.aspx

希望这有所帮助。

 类似资料:
  • 我注意到以下代码在netbeans中是完全合法的: 然而eclipse对此并不满意,我必须这样初始化它: 有趣的是netbean建议不要在初始化部分指定类型参数,而是使用菱形运算符??我想知道这两种方法之间的区别。以及应该使用哪一种,这样代码就可以在不同的IDE中使用而不会有任何变化。

  • 我想知道更多处理数组的numpy。我发现a[:,None]和a[:,]之间是不同的。我想深入研究何时何地使用它们。 我试图以特殊的方式解决从2d数组中减去1d的问题,就像numpy-subtract-add-1d-array-from-2d-array一样,我意识到a[:,None]和a[:,]是不同的。 有人能给我关于它的官方或具体参考吗?我真的会很感激你的!

  • 本文向大家介绍说明TDD和BDD之间的差异。,包括了说明TDD和BDD之间的差异。的使用技巧和注意事项,需要的朋友参考一下 下面列出了测试驱动开发(TDD)和行为驱动框架(BDD)之间的区别- Sl编号 TDD BDD 这是由开发人员驱动的。 2 这主要集中在应用程序功能的编码实现上。 3 这主要用于单元测试。 4 流行使用的工具是JDave,SpecFlow等。 5 TDD被称为“测试驱动开发”

  • 在系统中。识别模型。声明有三个条目:UPN、Name和Name标识符http://schemas.xmlsoap.org/ws/2005/05/identity/claims/namehttp://schemas.xmlsoap.org/ws/2005/05/identity/claims/upnhttp://schemas.xmlsoap.org/ws/2005/05/identity/clai

  • 发送表单数据时使用命令名称和模型属性有什么区别? 和 我应该在哪个时间点使用它们中的任何一个?

  • 可能重复: 何时使用LinkedList 我应该什么时候使用arrayList,什么时候使用LinkedList? 什么时候应该使用,和?