gpt4 book ai didi

firebase - 允许基于映射键的访问

转载 作者:行者123 更新时间:2023-12-04 17:48:41 24 4
gpt4 key购买 nike

这是安全规则的一个简单而常见的用例,但无法使其发挥作用。
我有一个文件 orgs/fooOrg在我的 Firestore(不是 RTDB)上,它包含一个对象

{
"members": {
"fooUser": true
}
}

并且应用的规则是
service cloud.firestore {
match /databases/{database}/documents {
match /orgs/{orgId} {
allow read: if "fooUser" in resource.data.members;
}
}
}

我期待 orgs 中的所有文档收藏应该能够被阅读;然而,服务器说 Error: Missing or insufficient permissions运行的结果
firebase.firestore().doc('orgs/fooOrg').get()

在浏览器上(使用 v4.5.0 和 v4.5.1)。甚至
allow read: if resource.data.members["fooUser"] == true;

也失败了什么地方出了错?

根据我的理解,这应该根据本文档工作
https://firebase.google.com/docs/firestore/security/secure-data#evaluating_documents_currently_in_the_database

我相信它 像一周前一样工作。突然之间,我的工作代码开始产生错误,所以我编写了这个 MCVE 并在几个不同的项目上进行了测试。

另外,我在下面发现了类似的问题,但与它们有点不同,所以不确定是否是相同的原因(Firestore上的错误)

Firestore security rules based on map values
(我的情况,即使得到一个简单的文件也失败了)

Firestore read rules with self condition
(这种情况使用 map 的值。我的情况,使用键)

最佳答案

现在似乎问题在不更改代码的情况下得到了解决。没有公告,但似乎 Firestore 方面已经修复了某些问题。

关于firebase - 允许基于映射键的访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46871361/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com