[]
列数据过滤通过用户信息/组织上下文或用户角色动态控制字段可见性,系统基于数据表列与用户属性/角色的自动匹配,确保用户仅能访问权限范围内的数据字段。管理员可通过配置字段级权限规则(如"售经理可以看到进货价格、订单利润等敏感列"),在数据集或报表中实现精准的列级访问控制。
销售数据列级权限控制方案
业务背景: 在销售数据管理中,部分用户(如销售经理)需要查看敏感列(如进货价格、订单利润等),而其他用户(如普通销售)仅能查看基础销售数据,不暴露敏感信息。
实现效果:
人员视角 | 成果展示 |
---|---|
销售经理视角(显示敏感数据列) | |
普通销售人员视角(隐藏敏感数据列) |
接下来参考上图实现效果,逐步演示 Wyn 列级权限的具体设置流程,为直观展示权限控制效果,本示例选用直连数据集进行演示。
数据源: 确保系统已成功创建可用的数据源。
启用安全试图: 数据准备界面,单击列安全试图,开启安全试图。
步骤一:创建数据集
使用管理员账号登录 Wyn ,进入文档门户,单击创建文档,选择报表的准备数据,选择直连数据集。
进入直连数据集数据准备界面,并将数据源中的表拖拽至关联关系区域。
步骤二:添加列安全视图
数据准备界面,单击上方操作栏的列安全试图按钮,进入列安全试图界面。
列安全试图界面,单击左上角的添加安全视图按钮即可添加安全视图,在右侧设置过滤条件规则和生效列。所有视图将按优先级顺序显示在下方的视图列表中,支持修改视图名称,调整视图顺序,复制视图,删除视图。
匹配规则: 系统采用优先级匹配机制处理多个安全试图:
按视图列表顺序从上至下逐条匹配当前用户权限,一旦匹配成功,对应视图立即生效;匹配成功后,不再继续后续试图的匹配检测。
每个用户会话最多生效一个安全视图,若全部视图均不匹配,则默认展示完整数据集。
建议: 使用调整视图顺序,将高频使用的视图置于列表上方。
type=info
提示: 当用户权限未匹配任何安全视图时,系统默认会展示完整数据集(即不应用任何字段过滤)。如需实现"未授权用户不可见任何字段"的安全要求,需要额外添加一个安全视图,将条件设置为对“每个人”,然后隐藏所有列。
步骤三:设置试图过滤条件
列安全试图界面,选择任意一个视图,然后在右侧设置该视图的筛选条件。满足筛选条件的用户则会看到该条视图中设置的列。针对用户信息上下文的使用,可以参考用户信息上下文应用示例-扩展属性应用。
单击 按钮,可添加单条过滤规则。
单击 按钮,可以添加一个嵌套过滤组。组内可添加过滤规则或再次嵌套过滤组。
单击 按钮,用于确定组内过滤规则之间,以及过滤规则与过滤嵌套组之间的组合关系。
支持对用户角色、用户信息上下文、组织信息上下文设置过滤。
文中示例设置的条件为:用户角色包含“A分公司-销售经理”且用户信息上下文“销售大区”值为“东北”的用户则满足视图“销售经理”。
步骤四:设置试图生效列
列安全试图界面,选择任意一个视图,然后为这个视图设置列。
列表中显示了所有在字段列表页勾选输出的列,且所有列在视图中默认都是“始终可见”,
根据实际需求修改列的状态。
始终可见: 表示该列将可见。
隐藏: 表示该列将不可见。
显示为其他值: 将字段值全部显示为一个固定的值。显示的值需与字段的数据类型保持一致,字符串类型的字段可接受字符或数字。
文中销售经理需要看到所有列,包括敏感数据,所有无需额外设置,保持所有列的默认值即可。但普通销售人员则需要隐藏部分列或修正部分列的显示,如下图所示。
步骤五:保存并分享文档
数据集设计完成后,单击上方操作栏的保存按钮,保存数据集(系统管理员admin是每个人的角色,所以数据集打开会显示订单编号和产品名称,且产品名称为XXX)。
保存后,选中数据集,单击基本信息,将访问权限分享给张三(A分公司销售经理角色且用户信息上下文为东北)和李四(A分公司普通销售经理角色)。
步骤六:成果展示
销售经理试图人员(用户角色包含“A分公司-销售经理”且用户信息上下文“销售大区”值为“东北”的用户)查看数据集时效果如下:
普通销售人员(用户角色包含“A分公司-普通销售”)查看这份数据时,看到的效果如下。隐藏了敏感列,并将客户名称全部修正成预设值。