如何撤销特定App ID(test.example.com)的Firebase访问权限?
Firebase应用已删除但仍可访问服务的解决办法
核心处理思路
Firebase服务的访问本质依赖API密钥校验和安全规则权限,即便你删除了Firebase应用或项目,可能因缓存、同步延迟等导致服务还能被访问,按以下步骤从根源阻断:
删除/失效关联API密钥
登录Google Cloud Console,找到对应项目(若项目已删除但在7天恢复期内,可先恢复),进入「API和服务」→「凭据」页面,找到该Android应用绑定的API密钥,直接删除该密钥,或修改其权限配置为拒绝所有请求。API密钥是应用请求Firebase服务的基础凭证,失效后所有请求会直接被拦截。设置安全规则为完全拒绝(项目未永久删除时)
若项目还在7天恢复窗口期,先恢复项目,然后分别修改Firestore、实时数据库的安全规则:- Firestore规则示例:
rules_version = '2'; service cloud.firestore { match /databases/{database}/documents { match /{document=**} { allow read, write: if false; } } } - 实时数据库规则示例:
{ "rules": { ".read": false, ".write": false } }
保存规则后,即便应用有旧的授权缓存,也无法读写任何数据。
- Firestore规则示例:
等待项目永久删除(已过恢复期时)
若项目已超过7天恢复期被永久删除,Google会逐步关停所有关联服务,此时应用的访问请求会返回权限错误或资源不存在。如果仍能访问,基本是应用本地缓存的数据,强制清除应用缓存或等待缓存过期即可。
补充说明
删除Firebase项目/应用后,服务状态同步可能需要数小时,若超过24小时仍能正常访问,优先检查API密钥是否未被删除,或安全规则是否未正确配置。
内容的提问来源于stack exchange,提问作者Ujwal Kadariya
相关产品推荐
相关产品推荐

