【发布时间】:2021-11-15 21:49:21
【问题描述】:
我有以下 Firestore 数据库结构(图 1)。我希望我的网络应用程序的(未经身份验证的)用户能够看到每个管道工的公开资料,其中包含他们从赢得的工作中获得的评论(图 2)。我的问题是我如何安全地公开每个进行过这些评论的用户的 UID。希望我的问题有意义。
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write: if request.auth != null;
}
}
}
【问题讨论】:
-
安全曝光是什么意思?只要您的安全规则不允许任何人写入或读取未经授权的内容,UID 就没有任何风险。结帐this answer
-
您好 Dharmaraj,感谢您分享链接!由于我的评论子集合位于私有的用户集合中,我无法想出解决方案来安全地公开显示子集合。以下评论子集合包含与 Jobs 集合关联的“Job ID”,它有多个 ID。希望这是有道理的:D
-
在这种情况下,您想从审查文档中隐藏什么?它是私有的,但您仍想向所有用户展示它有点令人困惑。你是说用户只能读不能写?
-
不想隐藏任何东西,我只是想防止可能的数据泄漏或其他人的数据操作。 Firestore 是否允许公开显示位于私人收藏中的子收藏?再次感谢您:D
-
在这种情况下,您应该说明谁可以访问这些集合并提供更多详细信息,以便我们知道哪些规则适合您的用例。
标签: javascript google-cloud-firestore firebase-security