全部文档
文档中心领域模型功能访问策略(模型权限)策略配置与测试

策略配置与测试

领域模型通过访问策略控制数据权限

  • 基于模型主对象配置策略,子对象权限随主对象

  • 提供两类权限:全局权限,例如全局新建;行级权限,例如行级查询、删除、更新

  • 每条策略控制:满足先验条件时允许或拒绝指定领域动作

  • 其中,先验条件可使用DeepModel访问规则,即基于DeepQL的对象规则,实现灵活配置

  • 目前访问策略已兼容老版权限方案,通过配置先验条件为权限方案的策略

配置策略前需要先开启策略控制,开启后所有数据与动作均受策略控制,无策略时默认无权

可点击“恢复初始策略”,清空已有策略,并创建默认的访问策略

新建策略时,包含两类权限,分别对应两类资源

  • 全局权限:与存量数据无关,例如全局新建

  • 行级权限:基于存量行级数据,例如行级查询、删除、更新

每条策略设置控制内容:先验条件 + 谓语 + 资源动作,即满足先验条件时允许或拒绝指定领域动作

  • 先验条件,即需要满足的条件

    • 全局权限,包含三类:任何情况、指定用户组、权限方案

    • 行级权限,包含四类:任何情况、指定用户组、访问规则、权限方案

    • 注:

      • 指定用户组可多选,在其中任一用户组的用户视为满足该条件

      • 访问规则即基于DeepQL的对象规则,在DeepModel中配置,详见后面章节:全局变量与访问规则(DeepModel相关)

      • 权限方案用于兼容老版权限方案,需要先开启额外启用权限方案,详见后面章节:策略兼容权限方案

  • 谓语,即允许(allow)、拒绝(deny)

  • 资源动作,即控制的领域动作

    • 全局权限,仅包含数据动作:新建

    • 行级权限,包含数据动作:查询、删除、更新,以及自定义动作

    • 注:查询是行级权限的基础

      • 允许策略:授权任何其他动作之前,必须先授权查询

      • 拒绝策略:与允许策略相反,拒绝查询权限后,其他动作均取消授权

每条策略还可设置特权,特权方包括:企业管理员、空间管理员、应用管理员、内部接口调用

  • 允许策略:特权方对于条件,视为始终成立

  • 拒绝策略:特权方忽略当前拒绝的策略

权限判定

  • 策略控制关闭时,所有数据与动作都有权限

  • 策略控制开启时,如果无策略或没有启用的策略,则默认无权

  • 策略控制开启时,针对每个资源动作,取相关所有已启用的允许策略的先验条件的并集,再去掉相关所有已启用的拒绝策略的先验条件,作为权限范围(类似下图);还要考虑策略的特权

    • 如果一个资源动作没有配置或启用任何策略,则该动作无权

可点击“在新标签页测试”,测试指定用户的权限

回到顶部

咨询热线

400-821-9199

我们使用 ChatGPT,基于文档中心的内容以及对话上下文回答您的问题。

ctrl+Enter to send