数据权限
本页涵盖数据库和表的权限。如果您还没有,请查看我们的权限概述。
设置数据库、模式或表的权限
为群组设置数据库、模式或表的数据权限
- 按下 Cmd/Ctrl + K。搜索 **权限** 并点击“权限设置”结果。Metabase 将默认显示在 **数据** 选项卡。
或
-
点击右上角的“齿轮”图标。
-
选择管理员设置。
-
点击 **权限** 选项卡,该选项卡默认显示 **数据** 选项卡。
您可以按群组或按数据库查看权限。
数据权限类型
您可以为数据库、模式或表设置以下类型的权限
如果您需要根据登录用户更改目标数据库,请查看数据库路由。当每个客户都有自己的数据库时,数据库路由尤其有用。
在应用特定权限之前,请阻止“所有用户”组
在应用更具体的权限之前,您需要确保没有人可以查看任何数据。由于每个人都自动属于“所有用户”组,您需要阻止此组查看任何数据。
在 **管理员设置** > **权限** > **数据** 中,阻止“所有用户”组访问数据库。
从那里,您可以选择性地向不同的群组授予权限。
查看数据权限
查看数据权限仅适用于 Pro 和 Enterprise 计划(包括自托管和 Metabase Cloud)。
“**查看数据**”权限决定了人们在查看问题、仪表板、模型和指标时可以看到哪些数据。“查看数据”权限还决定了群组是否可以在侧边栏中查看模型和指标浏览器。要浏览数据库,群组还需要对相关数据拥有创建查询权限。
权限级别包括
查看数据权限设置适用于数据库中的不同级别
查看数据权限 | 数据库 | Schema (数据库结构) | 表格 |
---|---|---|---|
可查看 | ✅ | ✅ | ✅ |
粒度* | ✅ | ✅ | ❌ |
行和列安全 | ❌ | ❌ | ✅ |
模拟 | ✅ | ❌ | ❌ |
已阻止 | ✅ | ✅ | ✅ |
* “粒度”设置本身不是一种权限类型;它只是表示权限是在当前级别以下设置的。例如,您可以在模式级别选择“粒度”来为该模式中的表设置每个表的权限。
在 Metabase 的免费开源版本中,“**查看数据**”设置默认为“可查看”。由于此设置的选项在 OSS 版本中不可用,Metabase 将仅在 Pro/Enterprise 版本中显示此“**查看数据**”设置。
对于群组可以查看*哪些*问题、模型和仪表板,请参阅集合权限。
可查看数据权限
“可查看数据”权限仅适用于 Pro 和 Enterprise 计划(包括自托管和 Metabase Cloud)。
设置为 **可查看** 意味着该群组可以查看数据源的所有数据,前提是他们拥有集合权限来查看问题、模型和仪表板。
粒度视图数据权限
粒度视图数据权限仅适用于 Pro 和 Enterprise 计划(包括自托管和 Metabase Cloud)。
此选项允许您为单个模式或表设置“查看数据”权限。仅适用于数据库和模式。如果您为数据库或模式选择“粒度”,Metabase 将打开该数据源并要求您为每个单独的模式或表设置权限。
对于表,您可以选择设置 **可查看** 或 **沙盒**。
行和列安全
行和列安全仅在 Pro 和 Enterprise 计划中可用(包括自托管和 Metabase Cloud)。
允许您根据用户属性和自定义视图设置行级权限。只能在表级别配置。
请参阅行和列安全性。
模拟视图数据权限
模拟视图数据权限仅适用于 Pro 和 Enterprise 计划(包括自托管和 Metabase Cloud)。
**模拟** 选项允许您使用数据库中的角色来指定人们可以查看和查询的数据。模拟只能在数据库级别设置,因为 Metabase 将遵循授予数据库角色的权限。
请参阅模拟视图数据权限
阻止视图数据权限
阻止视图数据权限仅适用于 Pro 和 Enterprise 计划(包括自托管和 Metabase Cloud)。
**已阻止** 确保群组中的人员无法查看来自此数据库、模式或表的数据,无论他们在集合级别的权限如何。
“已阻止视图数据权限”可以在数据库、模式或表级别设置。本质上,“已阻止”的作用是使集合权限不足以查看问题。例如,即使问题在一个群组有权访问的集合中,但该问题查询的数据源对该群组是“已阻止”的,那么该群组中的人员将无法查看该问题,*除非*他们属于另一个具有该数据源数据权限的群组。
为群组设置“已阻止”访问权限总是会阻止该群组查看使用本地查询编辑器构建的查询同一数据库中*任何*表的问题。因此,即使您只阻止数据库中的单个表,该群组也将无法查看查询该数据库中*任何*表的 SQL 问题的结果。原因:Metabase 尚未解析 SQL 查询,因此它无法确定 SQL 查询是否查询了您要阻止的表。
如果“已阻止”群组中的某人属于另一个将其“查看数据”权限设置为“可查看”的群组,则更宽松的访问权限将优先,他们将能够查看该问题。
创建查询权限
指定群组是否可以基于数据源创建新问题。创建查询包括钻取和过滤问题,或任何涉及更改结果的操作。此权限还决定了群组是否可以访问数据库浏览器以探索该数据源。
要启用群组的“创建查询”权限,该群组必须能够查看数据源(“可查看”权限)。
创建查询级别包括
查询构建器和本地创建查询权限
人们可以使用 Metabase 的查询构建器或其本地/SQL 编辑器。
仅查询构建器创建查询权限
人们可以使用 Metabase 的查询构建器创建新问题并钻取现有问题。
粒度
“粒度”选项允许您为数据库中的每个模式和/或表定义“创建查询”权限。
下载结果权限
下载权限仅适用于 Pro 和 Enterprise 计划(包括自托管和 Metabase Cloud)。
您可以设置群组中的人员是否可以从数据源下载结果(以及多少行)的权限。选项有
- 否(他们不能下载结果)
- 粒度(您希望为单个表或模式设置访问权限)
- 1 万行
- 100 万行
管理表元数据权限
数据模型权限仅适用于 Pro 和 Enterprise 计划(包括自托管和 Metabase Cloud)。
您可以定义群组是否可以编辑表元数据。选项有
- 是(表示他们可以编辑该数据源的元数据)。
- 否
- 粒度(用于为每个表设置特定权限)。
管理数据库权限
数据库管理权限仅适用于 Pro 和 Enterprise 计划(包括自托管和 Metabase Cloud)。
**管理数据库** 权限授予对给定数据库设置页面的访问权限(即 **管理员设置** > **数据库** > 您的数据库 页面的访问权限)。
在数据库设置页面上,您可以
请注意,只有管理员才能删除 Metabase 中的数据库连接,因此具有 **管理数据库** 权限的人员将看不到 **删除数据库** 按钮。
即使“所有用户”拥有更高的访问权限,也撤销访问权限
如果您看到此模态弹出窗口,Metabase 会告诉您,“所有用户”组(即 Metabase 中的所有人)对您正在设置权限的数据库、模式或表具有更高级别的访问权限。要将当前群组限制在您偏好的权限级别,则“所有用户”群组必须对相关数据源具有较低的权限级别。
上传权限
请参阅上传权限。
延伸阅读
阅读其他版本的 Metabase 的文档。