You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Metabase免费版无RLS,如何获取登录用户邮箱作查询变量实现数据过滤?

Metabase免费版实现基于登录用户邮箱的数据过滤方案

方法1:用户属性+原生SQL变量(自动过滤)

这是最直接的实现方式,利用Metabase内置的用户属性变量自动填充当前登录用户的邮箱:

  • 配置用户属性:进入Metabase后台「设置」→「用户」,编辑目标用户,添加自定义属性(比如命名为user_email),属性值设为用户的登录邮箱。如果是SSO登录的用户,Metabase会自动同步系统自带的email属性,无需手动添加。
  • 编写带变量的SQL查询:
SELECT * FROM 你的数据表
WHERE 数据中的邮箱字段 = {{current_user_attribute:user_email}}
-- 若用SSO同步的系统邮箱属性,替换为 {{current_user_attribute:email}}
  • 将该查询保存为问题并添加到仪表盘,打开时会自动用当前登录用户的邮箱过滤数据。

方法2:仪表盘参数+用户属性默认值(支持手动切换)

如果需要保留用户手动切换过滤条件的能力,同时默认加载自身邮箱对应数据:

  • 创建仪表盘参数:进入仪表盘编辑模式,点击「添加参数」,类型选「文本」,在「默认值」选项中选择「用户属性」,指定已配置的邮箱属性(user_email或系统自带的email)。
  • 关联问题过滤:给仪表盘内的问题添加过滤条件,将过滤值设置为刚才创建的仪表盘参数。打开仪表盘时参数会自动填充当前用户邮箱,用户也可手动修改参数切换数据范围。

注意事项

  • 该方式需要给每个需过滤的问题单独配置逻辑,无法像RLS那样全局生效,适合仪表盘数量不多的场景。
  • 若要防止用户修改过滤逻辑,需将问题和仪表盘设置为「只读」权限,避免用户编辑问题移除过滤条件。

内容的提问来源于stack exchange,提问作者carlaa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 12:44:52