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

Supabase是否支持逻辑视图的行级安全?更改所有者为authenticated可行吗?

Supabase 视图行级安全(RLS)支持说明

Supabase 支持对逻辑视图应用行级安全(RLS),但仅将视图所有者改为authenticated的说法并不准确,完整的配置需要结合 PostgreSQL 的安全规则和 Supabase 的权限体系,具体步骤如下:

  • 前提确认:确保视图依赖的基础表已启用 RLS(你的场景已满足此条件)
  • 创建视图时添加security_invoker属性:该属性让视图以调用者身份访问基础表,而非视图所有者身份,避免绕过基础表的 RLS 规则。示例语句:
    CREATE VIEW your_view_name
    WITH (security_invoker = true)
    AS SELECT * FROM your_base_table;
    
  • 为视图启用 RLS:
    ALTER VIEW your_view_name ENABLE ROW LEVEL SECURITY;
    
  • 为视图添加针对性的 RLS 策略:比如允许authenticated角色访问符合条件的数据,示例:
    CREATE POLICY "Authenticated users access own data"
    ON your_view_name
    FOR SELECT
    TO authenticated
    USING (user_id = auth.uid());
    

如果仅修改视图所有者为authenticated,却不配置security_invoker和视图自身的 RLS,视图会以所有者身份直接绕过基础表的 RLS 限制,反而会破坏权限控制逻辑,不符合安全需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 21:55:14