1. 连接权限
数据连接通过权限管理和权限控制,在提高数据使用便利性的同时保护数据的安全性,使系统具有统一数据发布平台的能力,让各业务部门能够对权威、统一的数据实现按需所取。
1.1. 连接管理
数据连接创建者(下文称owner)创建数据连接后,可以设置连接管理员,让管理者进行数据的进一步下发。
1.1.1. 管理者受规则约束
连接中有管理者约束设置,表示连接owner和管理者是否受连接设置的规则约束,默认情况下管理者受约束,该功能只能由owner设置,管理者不能设置。
1.1.2. 数据连接owner和管理者
数据连接owner和管理者分工不同。 数据连接owner管理整个数据连接,包括创建、编辑、删除连接,设置规则分发连接,设置连接管理者,及管理者约束规则。 连接管理者只是协助owner进行数据下发,建立数据使用规则。
1.2. 连接权限
数据连接owner和数据连接管理者都可以设置连接规则,对用户设置权限,下面详细的介绍连接权限内容。
- 数据连接内容列表
- 数据预览
- 权限控制
1.3. 数据连接内容列表
为了让用户能够方便、快捷的找到所需要的表,衡石SENSE特意添加了按照全部
、按已授权
、按未授权
、按访问者
四种方式进行搜索的功能。
只有owner(连接的创建者)的搜索框前面有下拉列表,可以通过上述四种方式进行筛选。
对于授权用户,搜索框前面没有下拉列表,只能从所有已授权表中进行筛选。
1.3.1. 全部
搜索默认从该连接的全部表中进行筛选,下方列出连接中所有目录,展开目录显示连接中所有表。在搜索框中输入想要查找的表的名称即可检索出该表。
1.3.2. 按已授权
选择按已授权
后,下方列出所有授权过的目录(若未对目录设置规则,但是该目录下有已授权的表,该目录也会显示)展开目录显示连接中所有授权过的表,已授权的目录或表下方会有绿色的icon。在搜索框中输入想要查找的已授权表的名称即可检索出该表。
1.3.3. 按未授权
选择按未授权
后,下方列出所有未授权的目录(若未对目录设置规则,但是该目录下有未授权的表,该目录也会显示)展开目录显示连接中所有未授权的表。在搜索框中输入想要查找的未授权表的名称即可检索出该表。
1.3.4. 按访问者
选择按访问者
后,下方列出该数据连接中所有的目录,展开目录显示连接中所有表。在搜索框内输入想要查找的用户/用户组的名称即可查看该用户/用户组能看到的目录和表。
1.4. 数据预览
用户在数据预览处可以查看所选中表的数据。
1.4.1. owner查看数据
数据连接中owner可以查看自己创建的数据连接中表的所有数据。
1.4.2. 授权用户查看数据
授权用户可以看到由数据owner设置规则后的数据。查看权限由授权类型决定。
1.5. 权限控制
对数据连接进行权限控制能够实现对数据的分发,owner可以通过添加规则决定让哪些用户访问数据连接中的数据。每条规则由授权用户和授权类型组成。
1.5.1. 授权用户
授权用户可以针对系统中的用户和用户组进行授权。
1.5.2. 授权类型
授权类型包括查看名称(LS)、查看数据结构(SC)、只读访问(RO)、完全访问(RW)四种类型。数据连接、目录、表都支持上述四种类型。具体授权范围如下。
查看名称(LS)
- 在连接上设置时可以访问该连接下所有目录、表的名称。
- 在目录上设置时可以访问该目录下所有表的名称。
- 在表上设置时可以访问该表的名称。
查看数据结构(SC)
- 在连接上设置时可以访问该连接下所有目录、表的名称以及表的结构。
- 在目录上设置时可以访问该目录下所有表的结构。
- 在表上设置时可以访问该表的结构。
只读访问(RO)
- 在连接上设置时可以访问该连接下所有目录、表的名称,表的结构和数据。
- 在目录上设置时可以访问该目录下所有表的名称、结构和数据。
在表上设置时可以访问该表的名称、结构和数据。表的RO只读访问与其他授权类型不同,可以设置行权限。支持通过简单过滤和表达式过滤两种行权限设置方式。
- 简单表达式
在简单表达式中可以通过固定值和用户属性来设置行权限控制。当有多个表达式时,可以选择满足'全部条件'或满足'任一条件'。 - 表达式过滤 通过使用表达式进行权限控制。
说明:在简单表达式中不是每个类型都有固定值和用户属性。
- 简单表达式
完全访问(RW)
- 在连接上设置时可以访问和更改该连接下所有表的名称、结构和数据。
- 在目录上设置时可以访问和更改该目录下所有表的名称、结构和数据。
- 在表上设置时可以访问和更改该表的名称、结构和数据。
说明:
- 每个规则支持选择一种授权类型。
- 仅有表的只读访问类型可以设置行权限控制。
- 在简单表达式中不是每个类型都同时能够通过固定值和用户属性进行设定。
1.5.3. 添加连接规则
下面演示给连接添加规则以及规则生效后授权用户查看情况。
第一步:添加规则
在数据连接选择需要授权的连接,打开右侧的权限控制
列表,点击+
添加规则。在规则列表中生成一条空规则,修改规则的名称使其更贴合业务逻辑。
第二步:选择授权用户以及用户组
选择本条规则作用的用户/用户组,滚动竖轴的滚动条,点击用户/用户组列表进行添加。
如果选择全部用户,可以添加用户组中的ALL_USERS。
第三步:选择授权类型
根据需要给连接添加对应的授权类型,这里选择查看名称。
第四步:保存规则
点击保存
,规则设置成功,规则名称后是当前规则所授权的用户/用户组的数量。
授权用户查看数据
授权用户在数据连接中可以看到该连接级连接下面的所有目录、表的名称。
添加目录规则
下面演示给目录添加规则以及规则生效后授权用户查看情况。
第一步:添加规则
在数据连接选择需要授权的目录,打开右侧的权限控制
列表,点击+
添加规则。在规则列表中生成一条空规则,修改规则的名称使其更贴合业务逻辑。
继承列表中显示了继承规则,是该目录上一层级的所有规则,默认是继承该规则。也可以选择不继承。
第二步:选择授权用户以及用户组
选择本条规则作用的用户/用户组,滚动竖轴的滚动条,点击用户/用户组列表进行添加。
如果选择全部用户,可以添加用户组中的ALL_USERS。
第三步:选择授权类型
根据需要选择对应的授权类型。这里选择只读访问类型。
第四步:保存规则
点击保存
,规则设置成功,规则名称后面是当前规则内所授权的用户/用户组的数量。
授权后用户访问
授权用户可以看到该目录下所有表的名称、结构和数据。
添加表规则
下面的示例是给表添加规则以及规则生效后授权用户查看情况。
第一步:添加规则
在数据连接选择需要授权的表,打开右侧的权限控制
列表,点击+
添加,一条空规则添加成功,修改规则的名称使其更贴合业务逻辑。
继承列表中显示了继承规则,是该表上一层级的所有规则,默认是继承该规则,也可以选择不继承。
第二步:选择授权用户以及用户组
选择本条规则作用的用户/用户组,滚动竖轴的滚动条,点击用户/用户组列表进行添加。
如果选择全部用户,可以添加用户组中的ALL_USERS。
第三步:选择授权类型
根据需要选择对应的授权类型。这里选择只读访问类型。
通过简单过滤设置行权限。
第四步:保存规则
点击保存
,规则设置成功,规则名称后的未保存更新为当前规则内所选授权用户用/户的数量。
授权后用户访问
选择不同的授权类型,该条规则内的用户访问应用时,在该数据连接内可见的内容分别为:
1.6. 规则之间的关系
1.6.1. 继承关系
在数据连接权限控制中,继承关系遵循以下规则:
- 目录会继承所属连接上的规则,该规则在表目录的规则列表中置顶,且只能查看不能修改。
- 表会继承所属目录和连接上的规则,该规则在表的规则列表中置顶,且只能查看不能修改。
- 来自父级节点的继承规则,支持全部继承、部分继承和不继承。默认是全部继承且生效。
- 没有继承的父级节点规则,可以通过勾线重新继承。
继承规则与当前规则同时生效时取并集。
1.6.2. 权限取并集
目录上和表上的授权类型不一致时,表上的授权类型生效的是权限较大的。
示例:目录上为用户A设置的授权类型为“查看名称”,该目录下某一张表为用户A设置的授权类型为“只读访问”,则用户A在该表上的实际权限为“只读访问”。
对于同一个用户,同一个表,如果创建了多条规则,那么最后生效的权限是规则的并集。
示例:对于同一个表,如果在规则1中为用户A授权访问区域为“北京市”的数据,在规则2中为用户A授权访问区域为“上海市”的数据,最终用户A可以访问的是“北京市”和“上海市”的数据。