【问题标题】:Collection filtering based on permission基于权限的集合过滤
【发布时间】:2015-03-06 21:03:10
【问题描述】:

可以说有像文件这样的资源。谁、何时、何地可以访问单个文件不是问题。 假设有一个像目录这样的资源,它有自己的属性并包含其他文件、目录和/或其他一些项目。现在有一个用户可以访问一个目录但无权访问(甚至查看名称/标题)某些文件或子目录。

如果策略决策与业务逻辑分离,如何过滤目录以仅包含用户可以访问的文件。我应该单独检查每个文件吗?

如果是,那么如果目录包含 10M 文件并且用户只能访问几个文件,如何识别这些文件?

【问题讨论】:

    标签: authorization access-control xacml xacml3 abac


    【解决方案1】:

    首先,您必须确定资源是什么:是文件夹还是文件?抽象意义上的文件(意味着文件夹和文件)?当且仅当您可以查看其祖先时,您是否可以查看文件?换句话说,有一个层次结构。

    撇开这些问题不谈,当涉及到对大量数据的访问控制时,您可以采取两种方法:

    1. 使用Multiple Decision Profile 为多个项目创建授权请求。多决策配置文件 (MDP) 请求看起来像 Alice 可以查看文件 A 和 B 以及 C 和 ...Z? PDP 将做出与原始问题中的项目一样多的决定。 MDP 适用于数千或更少的项目。
    2. 如果您有大量项目或未知数量的项目,您可以运行reverse process called reverse query (ARQ),而不是问是/否问题,而是问一个开放式问题,例如告诉我 Alice 可以查看哪些文件。 PDP 将使用过滤器表达式进行响应,例如如果 docStatus==draft AND docDept=Sales,则允许。然后,您将让 PEP 将过滤器转换为适当的过滤器,例如文件过滤器。

    【讨论】:

    • 文件/目录只是说明问题的一个例子。我认为第二个选项更接近我正在考虑的解决方案。
    • 您好,您的网站链接中有 404 :(
    • 谢谢,我已经修复了链接
    猜你喜欢
    • 1970-01-01
    • 2020-04-05
    • 2018-03-22
    • 2021-08-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-16
    • 1970-01-01
    相关资源
    最近更新 更多