定义自定义授权策略的最佳方法

帕尔古尼·穆克吉

我正在用MongoDB开发一个项目,我有一个方案,以便可以根据用户的角色来限制数据对用户的可见性,例如,如果我有以下格式的文档:

{
   "testme1":"fooo",
  "testme2":"foobar"
}

角色为“ admin”的用户可以同时看到“ testme1”和“ testme2”,而“ guest”只能看到“ testme2”。动态定义这些授权规则的最佳方法是什么,以便我的包装器api应该仅根据规则获取数据。我的做法是为用户提供一个Web“ UI”以定义规则,并根据其声明在我的服务器中保留一个“ XML”文件。请让我知道某人是否有更好的主意,或者他们是否有某种数据库级别的方法来做到这一点

大卫·布罗萨德(David Brossard)

存在一个授权标准,可用于定义授权策略。该标准称为XACML,可扩展访问控制标记语言。它实现了一个称为基于属性的访问控制(ABAC)的授权模型。您可以在这里阅读这两个主题:

XACML用以下概念定义了一个体系结构:

  • 政策决策点(PDP),
  • 政策执行点(PEP),以及
  • 策略信息点(PIP)。

在典型的流程中,PEP保护您的数据/服务/ API。PEP将向PDP发送授权请求:

  • 用户Alice可以查看记录123吗?

PDP将求助于PIP以检索缺少的属性(例如,用户的角色和权限)以及资源属性(例如,数据的敏感性,白名单或黑名单)...基于新信息,PDP可以做出以下决定:许可拒绝允许或阻止访问。

使用XACML,授权策略的丰富性不受限制。我在Axiomatics公司工作,该公司实施XACML,我们的解决方案用于制造,医疗保健,银行业务,以动态方式保护对敏感数据的访问(例如,经理可以编辑其拥有的文档)。

XACML启用集中管理的外部授权。它还启用了我喜欢的任何深度授权,这意味着您可以将XACML应用于Web API,业务逻辑,演示UI和数据库。

高温超导

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

自定义授权策略

来自分类Dev

编写自定义异常的最佳方法

来自分类Dev

自定义动作栏的最佳方法

来自分类Dev

编写自定义异常的最佳方法

来自分类Dev

解析自定义Filtersyntax的最佳方法

来自分类Dev

创建自定义查找的最佳方法

来自分类Dev

WCF自定义授权

来自分类Dev

jBPM自定义授权

来自分类Dev

使用自定义授权测试异步Web API方法

来自分类Dev

JPA 2.1自定义命名策略?

来自分类Dev

创建自定义合并策略

来自分类Dev

自定义资源cloudformation的堆栈策略

来自分类Dev

JPA 2.1自定义命名策略?

来自分类Dev

Azure 自定义扩展策略

来自分类Dev

CakePHP 3中的自定义授权

来自分类Dev

自定义角色授权(按会话)

来自分类Dev

自定义授权 - Web Api

来自分类Dev

Kafka 自定义授权器

来自分类Dev

从自定义UITableViewCell操作UIImagePickerController的最佳方法

来自分类Dev

用Java编写自定义异常名称的最佳方法

来自分类Dev

进行自定义排序的最佳方法是什么?

来自分类Dev

GWT:制作自定义ListBox的最佳方法是什么

来自分类Dev

用Java编写自定义异常名称的最佳方法

来自分类Dev

什么是在WPF中自定义绑定文本的最佳方法

来自分类Dev

自定义Bootstrap的最佳方法是什么

来自分类Dev

创建自定义android按钮的最佳方法

来自分类Dev

如何为选择定义自定义定位策略

来自分类Dev

NET Core中如何使用自定义策略架构实现jwt令牌库身份验证以进行授权?

来自分类Dev

android:自定义背景的最佳做法