如何限制用户仅从 Cloud Firestore 检索他们的数据?
Posted
技术标签:
【中文标题】如何限制用户仅从 Cloud Firestore 检索他们的数据?【英文标题】:How can I restrict users to retrieve only their data from Cloud Firestore? 【发布时间】:2021-02-15 00:17:52 【问题描述】:我正在使用 Kotlin 构建一个应用程序。在app中,用户可以注册并登录。用户登录后,用户添加一些文字和图片,这些数据成功添加到firebase云存储中,并以列表的形式显示在app中。但是,在该应用上注册的任何人都可以访问此列表。
我想做的是用户只能看到自己的数据。所以我不希望用户看到彼此的数据。我只希望每个用户都能看到他们自己添加的数据。我认为我需要更改 Cloud Firestore 规则。如何设置特定文档的权限?
我是这个领域的新手,谢谢!
我的 Firebase 云存储规则;
rules_version = '2';
service cloud.firestore
match /databases/database/documents
match/Notes/noteId
allow read, write: if request.auth.uid != null ;
this is my firebase cloud store screen shot
【问题讨论】:
这段代码中到底有什么不符合您的预期?你有什么错误吗? 我没有任何错误。我尝试制作一个笔记应用程序来练习。问题是用户会看到其他用户创建的笔记。我尝试修复它。 【参考方案1】:这是通过设置规则来完成的。你可以在这里阅读更多:https://firebase.google.com/docs/database/security#section-overview
【讨论】:
文档链接很棒,但最好的答案提供了一些关于链接内容的背景信息。在这种情况下,用户要求一个规则,使用户只能准备他们自己的数据。您能建议该规则的外观吗?此外,这是问题中所问规则的错误链接。以上是关于如何限制用户仅从 Cloud Firestore 检索他们的数据?的主要内容,如果未能解决你的问题,请参考以下文章
限制通过VPC网络访问Google Cloud Firestore。
使用规则禁用 Firebase Cloud Firestore 中的查询集合
如何使用 Cloud Firestore 查询用户待处理的好友请求?