critical
如何修复暴露的 Supabase 密钥
问题所在
分两种情况。anon 密钥本就该公开——如果只暴露了它,RLS 就是你的修复手段。但如果你的 service-role 密钥进入了客户端或公开仓库,你的整个数据库都已暴露,必须立即轮换。
分步操作
- 1
判断泄露的是哪个密钥
anon(公开)密钥暴露没关系。service_role 密钥则不行——它会绕过 RLS 并授予完整访问权限。
- 2
若是 service-role 密钥泄露,立即轮换
在 Supabase → Project Settings → API 中重新生成 service-role 密钥,并仅在服务端环境变量中更新它。
- 3
从客户端代码和 git 历史中移除密钥
从打包文件中清除它,并从 git 历史中彻底删除(否则它会留在旧提交里)。
- 4
无论如何都用 RLS 锁定
启用行级安全,这样即使 anon 密钥被暴露也无法读取你的数据。
想要的不只是修复,还要有人核实?
修复只是第一步。ClearedToShip 的复核会确认修复确实有效,并为你出具一份签署的、带保险的上线放行许可。加入抢先体验: