数据模型支持数据权限设置,用户可以针对不同的数据模型设置个性化的数据权限。
数据模型无论是直连或抽取模式都支持数据权限设置。
1、必须对新建或变更的数据模型已执行了 保存 操作才能设置行权限。 2、直连模式下,如果在数据原表上设置了行权限,数据模型会继承源表设置的行权限;如果是 抽取模式,则不会继承源表设置的行权限,需要重新在数据模型上设置行权限。 3、数据模型行权限 的入口在资源树上的右键菜单“设置数据权限”。 4、迁移数据模型资源时,在导出资源界面勾选了”导出数据源或数据模型包含数据行权限“支持把行权限一并导出。 5、数据模型行权限,暂不支持批量设置。 6、设置数据行权限也可参考源表的,详情可参考:数据权限。 |
示例 :管理员可以查看所有区域数据,区域人员只能查看本区域数据。
具体操作步骤如下:
1、先去运维设置/用户管理创建角色和用户: 华南、demo_test(该账号为只能查看华南的数据)。
2、创建数据模型并加入产品自带数据库northwind下的”产品表“、”产品类别表等“,创建数据模型”订单模型“。
3、保存数据模型,然后去设置数据行权限,如下图:
选项 | 内容 |
---|---|
入口 | 在资源树找到对应的资源,右键菜单/ 设置数据权限。 |
设置 |
|
适用范围 |
|
适用对象 |
|
简单设置” | 1、简单设置是通过对字段进行条件设置来实现数据权限的方法;这种方法设置的条件是固定的。 2、选择 简单设置:先在可选列中设置条件,然后点击 设置条件关系 按钮。 3、条件间关系说明如下:
|
高级设置 |
4、设置行权限,点击 确定,会保存行权限。
5、去新建交互式仪表盘,并拖入组件,效果如下图:
6、使用demo_test登录,只能查看 华南区域数据:
在SQL查询的where条件中设置数据权限表达式,实现方法请参见:SQL查询。
1、数据模型的查询必须含有参数。 |
数据模型中通过在参数定义中应用“用户属性”和“系统函数”来实现数据权限设置:将当前用户的属性与参数进行关联后,达到控制用户数据权限的目的。
示例:当前登录用户只允许查看其所属区域的数据
1、在“运维设置/全局资源定义/用户属性”界面定义好如下用户属性:
2、创建数据模型,并且添加即席查询,并且拖入 发货区域作为筛选条件:
3、在数据模型的参数面板中定义参数引用“用户属性”:
4、保存数据模型。
5、基于该数据模型创建自助仪表盘后,用属于“华南”区域的用户“demo_test”登录查看效果:
1、创建数据模型,并且添加即席查询,并且拖入 发货区域作为筛选条件:
2、在数据模型的参数面板中定义参数引用“系统函数”:
3、保存数据模型。
4、基于该数据模型创建自助仪表盘后,用属于“华南”区域的用户“demo_test”登录查看效果: