安全控制面板
🔐 应用安全:Row-Level Security(RLS)指南
🚀 概览
使用 Row-Level Security(RLS) 规则,控制谁可以访问、读取、写入或删除你应用中某个数据实体(data entity)里的记录。你可以为每个实体单独配置访问权限,确保数据只对授权用户可见。
🧠 什么时候使用这些功能?
🔐 数据安全处理
适用于以下场景:
- 有敏感或私密数据,不应对所有用户可见
- 你希望避免通过 API、导出或报表 意外暴露数据
- 应用包含 用户生成内容,每个用户只能访问自己的数据
示例用例:
- 一个健身应用,每位用户只能看到自己的训练记录
- 一个公司仪表盘,员工只能查看自己的绩效指标
👥 用户专属的数据视图
适用于以下场景:
- 你希望根据用户角色、部门或数据归属 个性化显示应用内容
- 不同用户或角色应看到 不同的数据子集
- 构建多租户应用,用户之间 数据应完全隔离
示例用例:
- 一个 CRM 系统,销售只能看到分配给自己的潜在客户
- 一个校园应用,老师只能看到自己班级的学生信息
- 一个管理后台,不同角色(admin、editor、viewer)拥有不同的数据访问权限
🔧 如何访问安全设置
进入 App Security 页面
- 打开你的应用工作区,进入 “Security” 标签页
安全控制面板
- 在安全面板中,你可以看到应用中所有数据实体的列表
- 每个实体会显示当前安全状态:Public(公开) 或 Restricted(受限)
编辑安全规则
- 点击某个实体,即可查看或编辑它的安全规则
🛡️ 安全模式
✅ Public Access(无访问限制)
- 所有用户都可以访问该实体的所有记录
🔒 Restricted Access(受限访问)
- 只有符合已定义规则的用户才能访问记录
🧩 规则类型
在编辑实体的安全性时,你可以为以下权限配置规则:
- Read Access(读取权限)
- Write/Delete Access(写入/删除权限)
每条规则可以是以下类型之一:
No Restrictions(无限制) 所有用户都可以访问记录
Creator Only(仅创建者) 用户只能访问自己创建的记录
Entity-User Field Comparison(实体字段与用户属性比较) 比较实体中的某个字段(如 ‘Organization’)与用户属性(如用户的 ‘Organization’) 示例:只有部门字段与用户部门相匹配的记录才可访问
User Property Check(用户属性检查) 根据用户属性(如角色、邮箱)限制访问 示例:只有角色为 “admin” 的用户才能访问记录
➕ 如何添加或编辑规则
选择访问类型 切换到 Read Access 或 Write/Delete Access 标签页
添加规则 点击 “Add Rule”,选择规则类型并填写所需字段
添加多条规则 如果需要,可以添加多条规则 —— 只要有一条规则匹配,用户就可访问(采用 OR 逻辑)
自定义写入/删除规则 默认情况下,写入/删除权限继承读取权限 点击 “Create Custom Write Rules” 可单独定义写入/删除规则
删除规则
- 点击 Remove All Rules 可清除实体的所有安全规则
- 实体将恢复为公开状态
🧾 自动生成的规则(JSON)
- 所有安全规则将以只读的 JSON 格式展示,确保透明可见
💡 示例场景
- Public Entity(公开实体):未设置任何规则,所有用户都可以访问
- Creator Only(仅创建者访问):添加规则,用户只能查看自己创建的记录
- 基于部门的访问控制:将记录中的 department 字段与用户的 department 进行匹配
- 仅管理员访问:角色检查,仅 role = admin 的用户可以访问
📊 可视化摘要
- 每个实体卡片会显示该实体当前的安全规则摘要
- 图标和简要说明会展示 读取权限 和 写入/删除权限 的设定
📝 小贴士
- 必须先 创建数据实体,才能配置其安全规则
- 所有更改都是 按实体保存 的
- 编辑后请务必点击 “Save Security Rules” 保存你的设置