如何管好数据权限?DataEase 开源 BI 访问控制实战指南
【免费下载链接】dataease🔥 人人可用的开源 BI 工具,数据可视化神器。An open-source BI tool alternative to Tableau.项目地址: https://gitcode.com/GitHub_Trending/da/dataease
🔒 数据报表发给全公司,结果竞品的销售数据也被看到了?这不是个例,而是很多团队用 BI 工具时的真实隐患。DataEase 作为一款人人可用的开源 BI 工具(Tableau 的开源替代方案),在数据可视化之外,内置了一套完整的权限管理与访问控制机制:从用户角色、资源操作授权,到行级数据隔离,都能在界面上直接配置。
先搞清楚:DataEase 的权限模型长什么样
理解它的关键是一个思路:"谁能对什么做什么"。整个体系由三块拼成:
- 用户:账号、姓名、邮箱等身份信息,支持创建、重置密码、启用/禁用账号,还能对接 LDAP 等企业目录
- 角色:权限的"打包容器",一次配置好一组权限后,直接挂到一批用户身上
- 资源 × 操作:系统功能、数据源、数据集、仪表板是"资源",查看、编辑、删除、分享是"操作",授权的最小单位就是二者的组合
用户和角色是多对多关系:一个人可以挂多个角色(权限取并集),一个角色也能覆盖多名用户。想给个别人开小灶?系统还支持绕过角色,直接给单个用户授权。
用户与角色:访问控制的地基
结论:先把"人"管好,后面所有授权才有抓手。
用户侧的能力集中在创建、查询、编辑、禁用账号这几个动作上,敏感操作如修改密码(ModifyPwdRequest)和账号状态切换都有独立入口。
角色侧则提供了完整的 CRUD 生命周期:建角色、编辑权限集合、复制角色(RoleCopyRequest)、批量挂人(MountUserRequest)与解绑(UnmountUserRequest)。典型用法是按职能划分——
- 管理员:系统配置、用户管理全权限
- 分析师:建报表、改数据集
- 查看者:只读,什么都不能动
源码中这套接口定义在 sdk/api/api-permissions/ 模块下,RoleApi和UserApi就是角色与用户两条线的入口。
行级数据隔离:同一张报表,不同人看到不同的数
结论:DataEase 把数据权限做到了"行"和"列"两个维度,这是它区别于简单菜单授权的地方。
具体有三种常用玩法:
- 行级过滤:通过
RowPermissionsApi按条件裁剪数据行,比如华东区销售只能看到华东的订单 - 列级隐藏:通过
ColumnPermissionsApi屏蔽手机号、身份证号等敏感字段 - 白名单放行:
WhiteListUsersRequest允许个别用户绕过限制看全量数据
配合仪表板水印(VisualizationWatermark相关实现)与多因素登录(LoginApi的MfaLoginDTO),敏感场景的防线就比较完整了:
权限审计最实用的检查清单
结论:权限不是配一次就完事,它会随着人员流动"腐化"。
建议每季度过一遍下面这份清单:
- 最小化检查:离职、转岗账号是否还挂着旧角色?该解绑的解绑
- 冲突检测:两个角色的授权是否意外叠加出了"超级视野"?
- 直接授权盘点:绕过角色单独开的权限往往最容易被遗忘,优先清理
- 敏感操作回顾:授权变更、数据导出是否有记录可查
快速上手:10 分钟部署体验
🚀 一台 2 核 4G 的 Linux 服务器即可。以 root 用户执行:
git clone https://gitcode.com/GitHub_Trending/da/dataease cd dataease && chmod +x installer/install.sh && installer/install.sh安装完成后用默认账号登录:用户名admin,初始密码DataEase@123456,进入【系统管理】→【权限管理】即可开始配置用户与角色。
安全不是要把所有人都挡在数据之外,而是让对的人在对的边界内自由协作。把角色矩阵当作活文档,定期复核,权限体系才能一直好用。
【免费下载链接】dataease🔥 人人可用的开源 BI 工具,数据可视化神器。An open-source BI tool alternative to Tableau.项目地址: https://gitcode.com/GitHub_Trending/da/dataease
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考