Firebase 在firestore中通过安全规则实现仅限内容所有者的访问安全吗?
我在firebase安全规则文档中看到了以下代码片段。但它安全吗?例如,假设有人将另一个人的Firebase 在firestore中通过安全规则实现仅限内容所有者的访问安全吗?,firebase,authentication,google-cloud-firestore,firebase-authentication,Firebase,Authentication,Google Cloud Firestore,Firebase Authentication,我在firebase安全规则文档中看到了以下代码片段。但它安全吗?例如,假设有人将另一个人的auth.uid更改为uid。这不意味着他有写作的特权吗。或者是auth.id来自firebase端的承载令牌 是否通过中的安全规则实现仅限内容所有者的访问 消防仓库安全吗 是的,它是安全的:当用户登录到应用程序时,由身份验证服务创建Firebase ID令牌。这些令牌是签名的,可以安全地识别Firebase项目中的用户。如果恶意用户试图修改JWT,Firebase后端在评估安全规则时对令牌的验证将失败
auth.uid
更改为uid
。这不意味着他有写作的特权吗。或者是auth.id
来自firebase端的承载令牌
是否通过中的安全规则实现仅限内容所有者的访问
消防仓库安全吗
是的,它是安全的:当用户登录到应用程序时,由身份验证服务创建Firebase ID令牌。这些令牌是签名的,可以安全地识别Firebase项目中的用户。如果恶意用户试图修改JWT,Firebase后端在评估安全规则时对令牌的验证将失败,访问将被拒绝
更多信息请参见文档和。首先感谢您的快速回复。那么下面给定的auth负载只对管理员可见,对吗?用户只看到原始令牌<代码>{“uid”:“,”token:{“sub:”,“aud:”,“email:”,“email\u verified:”false,“phone\u number:”,“name:”,“firebase:{“sign\u in\u provider:”:“google.com”}}}我不确定是否理解您评论中的问题。令牌对用户可见(如果我没有弄错的话,它存储在cookie中),但是如果它被修改,后端将在验证其完整性时检测到它,安全规则将失败。
service cloud.firestore {
match /databases/{database}/documents {
// Allow only authenticated content owners access
match /some_collection/{userId}/{documents=**} {
allow read, write: if request.auth != null && request.auth.uid == userId
}
}
}