Firebase存储允许将文件夹写入多个用户

时间:2019-07-01 20:40:12

标签: firebase google-cloud-firestore firebase-storage firebase-security-rules

我创建了一个应用程序,允许用户创建简单的照片集。所有数据都存储在Firebase Cloud Firestore中。图像将上传到Firebase存储。 收藏集的所有者可以邀请任何其他用户访问他的收藏集并上传照片。 在Firestore中共享数据可以正常工作。但是现在我在编写存储的安全规则时遇到了问题。有谁知道,我该如何编写规则,以便添加到集合中的任何用户也可以访问图像?每个集合的文件都存储在单独的文件夹中。

2 个答案:

答案 0 :(得分:1)

您应该研究创建一个私有组,并在私有令牌的帮助下对该组进行身份验证。

https://firebase.google.com/docs/storage/security/user-security#group_private

答案 1 :(得分:1)

Firebase安全规则当前不桥接产品之间。您无法在Cloud Storage的安全规则中使用Cloud Firestore中的数据。在Cloud Storage的安全规则中,您唯一有权访问的是每个用户object metadata和Firebase身份验证custom claims。您将必须找出一种方法来更改其中任何一种以实现您的权限。

或者,您可以直接通过Cloud Functions进行所有访问,以决定用户是否应该能够访问内容,但是请记住,Cloud Functions响应最大只能为10MB。