访问控制
Supabase 提供细粒度的访问控制,用于管理组织和项目中的权限。
在每个组织和项目中,成员可以拥有以下角色之一:
- 所有者(Owner):对组织和项目资源拥有完全访问权限。
- 管理员(Administrator):对组织和项目资源拥有完全访问权限,但不包括更新组织设置、将项目转移到组织外以及添加新所有者。
- 开发者(Developer):对组织资源拥有只读访问权限,对项目资源拥有内容访问权限,但无法更改任何项目设置。
- 只读(Read-Only):对组织和项目资源拥有只读访问权限。
只读角色仅在团队版和企业版计划中可用。
首次创建账户时,系统会为您创建一个默认组织,并将您指定为所有者。您创建的任何其他组织也会将您指定为所有者。
管理组织成员
要邀请他人协作,请访问组织的团队设置,向其他用户的邮箱发送邀请链接。邀请有效期为24小时。对于项目范围的角色,在发送邀请时您只能为用户分配单个项目的角色。用户接受邀请后,您可以为其分配多个项目的角色。
从SAML SSO账户发送的邀请只能由同一身份提供商的其他SAML SSO账户接受。
这是一项安全措施,旨在防止意外邀请到非企业身份提供商管理的账户。
转移组织所有权
每个 Supabase 组织必须至少有一位所有者。如果您的组织有其他所有者,您可以通过点击组织团队设置中的离开团队来放弃所有权并退出组织。
否则,您需要先邀请一位用户作为所有者(他们需要接受邀请),或者将现有组织成员提升为所有者,然后才能退出组织。
组织范围角色 vs 项目范围角色
项目范围角色仅适用于团队版和企业版计划。
组织中的每个成员可以被分配组织范围的角色或特定项目范围的角色。如果成员在组织层级拥有角色,他们将在该组织的所有当前及未来项目中拥有该角色的等效权限。
通过项目范围权限,您可以将成员分配到特定项目范围内的角色。
各角色在组织中的权限
下表展示了不同角色对组织资源可执行的操作。
资源 | 操作 | 所有者 | 管理员 | 开发者 | 只读1 |
---|---|---|---|---|---|
组织 | |||||
组织管理 | 更新 | ||||
删除 | |||||
OpenAI 遥测配置2 | 更新 | ||||
成员 | |||||
组织成员 | 查看列表 | ||||
所有者 | 添加 | ||||
移除 | |||||
管理员 | 添加 | ||||
移除 | |||||
开发者 | 添加 | ||||
移除 | |||||
所有者 (项目范围) | 添加 | ||||
移除 | |||||
管理员 (项目范围) | 添加 | ||||
移除 | |||||
开发者 (项目范围) | 添加 | ||||
移除 | |||||
邀请 | 撤销 | ||||
重新发送 | |||||
接受3 | |||||
账单 | |||||
发票 | 查看列表 | ||||
账单邮箱 | 查看 | ||||
更新 | |||||
订阅 | 查看 | ||||
更新 | |||||
账单地址 | 查看 | ||||
更新 | |||||
税码 | 查看 | ||||
更新 | |||||
支付方式 | 查看 | ||||
更新 | |||||
使用量 | 查看 | ||||
集成 (组织设置) | |||||
授权 GitHub | - | ||||
添加 GitHub 仓库 | - | ||||
GitHub 连接 | 创建 | ||||
更新 | |||||
删除 | |||||
查看 | |||||
Vercel 连接 | 创建 | ||||
更新 | |||||
删除 | |||||
查看 | |||||
OAuth 应用 | |||||
OAuth 应用 | 创建 | ||||
更新 | |||||
删除 | |||||
查看列表 | |||||
审计日志 | |||||
查看审计日志 | - | ||||
法律文档 | |||||
SOC2 Type 2 报告 | 下载 | ||||
安全问卷 | 下载 |
不同角色对项目的权限
下表展示了各角色对项目资源可执行的操作。
资源 | 操作 | 所有者 | 管理员 | 开发者 | 只读45 |
---|---|---|---|---|---|
项目 | |||||
项目管理 | 转移 | ||||
创建 | |||||
删除 | |||||
更新(名称) | |||||
暂停 | |||||
恢复 | |||||
重启 | |||||
自定义域名 | 查看 | ||||
更新 | |||||
数据(数据库) | 查看 | ||||
管理 | |||||
基础设施 | |||||
只读副本 | 列表 | ||||
创建 | |||||
删除 | |||||
附加组件 | 更新 | ||||
集成 | |||||
授权 GitHub | - | ||||
添加 GitHub 仓库 | - | ||||
GitHub 连接 | 创建 | ||||
更新 | |||||
删除 | |||||
查看 | |||||
Vercel 连接 | 创建 | ||||
更新 | |||||
删除 | |||||
查看 | |||||
数据库配置 | |||||
重置密码 | - | ||||
连接池设置 | 查看 | ||||
更新 | |||||
SSL 配置 | 查看 | ||||
更新 | |||||
磁盘空间配置 | 查看 | ||||
更新 | |||||
网络访问限制 | 查看 | ||||
创建 | |||||
删除 | |||||
网络封禁 | 查看 | ||||
解除封禁 | |||||
API 配置 | |||||
API 密钥 | 查看 service key | ||||
查看 anon key | |||||
JWT 密钥 | 查看 | ||||
生成新密钥 | |||||
API 设置 | 查看 | ||||
更新 | |||||
认证配置 | |||||
认证设置 | 查看 | ||||
更新 | |||||
SMTP 设置 | 查看 | ||||
更新 | |||||
高级设置 | 查看 | ||||
更新 | |||||
存储配置 | |||||
上传限制 | 查看 | ||||
更新 | |||||
S3 访问密钥 | 查看 | ||||
创建 | |||||
删除 | |||||
Edge Functions 配置 | |||||
密钥(Secrets) | 查看 | 6 | |||
创建 | |||||
删除 | |||||
SQL 编辑器 | |||||
查询(Queries) | 创建 | ||||
更新 | |||||
删除 | |||||
查看 | |||||
列表 | |||||
执行 | 7 | ||||
数据库(Database) | |||||
定时备份(Scheduled Backups) | 查看 | ||||
下载 | |||||
恢复 | |||||
物理备份(PITR) | 查看 | ||||
恢复 | |||||
认证(Authentication) | |||||
用户(Users) | 创建 | ||||
删除 | |||||
列表 | |||||
发送 OTP | |||||
发送密码重置 | |||||
发送 magic link | |||||
移除 MFA 因子 | |||||
提供商(Providers) | 查看 | ||||
更新 | |||||
速率限制(Rate Limits) | 查看 | ||||
更新 | |||||
邮件模板(Email Templates) | 查看 | ||||
更新 | |||||
URL 配置(URL Configuration) | 查看 | ||||
更新 | |||||
钩子(Hooks) | 查看 | ||||
创建 | |||||
删除 | |||||
存储(Storage) | |||||
存储桶(Buckets) | 创建 | ||||
更新 | |||||
删除 | |||||
查看 | |||||
列表 | |||||
文件(Files) | 创建(上传) | ||||
更新 | |||||
删除 | |||||
列表 | |||||
Edge Functions | |||||
Edge Functions(边缘函数) | 更新 | ||||
删除 | |||||
查看 | |||||
列表 | |||||
报表 | |||||
自定义报表 | 创建 | ||||
更新 | |||||
删除 | |||||
查看 | |||||
列表 | |||||
日志与分析 | |||||
查询 | 创建 | ||||
更新 | |||||
删除 | |||||
查看 | |||||
列表 | |||||
运行 | |||||
事件集合 | 创建 | ||||
更新 | |||||
删除 | |||||
查看 | |||||
列表 | |||||
仓库访问令牌 | 创建 | ||||
吊销 | |||||
列表 | |||||
分支管理 | |||||
启用分支 | - | ||||
禁用分支 | - | ||||
创建 | |||||
删除 | |||||
列表 |
Footnotes
-
仅适用于 Team 和 Enterprise 计划。 ↩
-
向 OpenAI 发送匿名数据是可选的,可以提升 Studio AI Assistant 的回答质量。 ↩
-
从 SSO 账户发送的邀请只能被来自同一身份提供商的其他 SSO 账户接受。这是一项安全措施,可防止邀请非公司企业系统管理的账户。 ↩
-
仅适用于 Team 和 Enterprise 计划。 ↩
-
表中权限适用于 API 和控制台(Dashboard)。 ↩
-
只读角色可以访问密钥(secrets)。 ↩
-
只允许执行 SELECT 查询。只读角色运行的 SQL 查询片段会以 supabase_read_only_user 角色连接数据库。该角色拥有 Postgres 预定义角色 pg_read_all_data。 ↩