【问题标题】:XACML Policy with Multiple Resources with Multiple Rules and Multiple Actions具有多个资源的 XACML 策略,具有多个规则和多个操作
【发布时间】:2023-03-17 19:27:01
【问题描述】:

在多决策配置文件场景中,我想为特定租户和客户等根资源创建策略。在这里,我的场景就像我有一个租户 T1,并且允许租户 T1 访问根资源客户。客户是顶级资源,它将包含子子资源,例如:Sub-Resources: name, email。在我的场景中,我如何创建一个策略,以便我可以为每个子资源强制执行多个规则,例如:

规则 1: 管理员允许访问资源- {name: create,read,update,delete}, {email: create,read,update,delete} 规则 2: 员工允许访问资源- {name: read,update}, {email: read} 请分享相同的政策结构和请求格式。

在请求格式中,我只想传递租户 ID 和根级别资源客户。

【问题讨论】:

    标签: authorization access-control xacml xacml3 xacml2


    【解决方案1】:

    在这种情况下,您要做的就是传入您感兴趣的字段 id。

    请求将是:“Alice 可以查看客户记录 #123 的姓名字段吗”?

    您可以将其表达为多项决策请求,例如:

    “Alice 可以查看客户记录 #123 的姓名、电子邮件和职位字段吗”?

    无论哪种方式,您的政策都将以领域为中心。它将保护给定的字段或一组字段。您实际上可以定义一组非敏感字段和一组敏感字段。您甚至可以根据字段元数据编写策略。您可以写成“如果用户的许可 > 字段的敏感性,用户可以查看字段”,而不是说“用户可以查看字段‘电子邮件’”。

    或者,您也可以使用 Reverse Query - 这是 Axiomatics 的 API 所特有的。反向查询可让您执行以下类型的请求/响应:

    • 问:列出 Alice 可以查看的字段
    • A:姓名、电子邮件

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-03-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多