Firebase存储读取安全规则似乎没有任何效果

标签 firebase firebase-storage firebase-security

我正在努力为 Firebase 存储设置安全规则,但读取规则似乎没有任何效果。

rules_version = '2';
service firebase.storage {
match /b/{bucket}/o {
    match /{allPaths=**} {
      allow read, write: if request.auth != null;

    }
  }
}

我可以将我存储的任何 imgURL 粘贴到浏览器中,然后它就会直接拉出图像。我注销了 firebase 帐户,也注销了 Xcode,认为也许

即使我从上面的代码中删除“读取”并仅指定写入权限,如果我将其中一个文件中的 URL 粘贴到浏览器中,它仍然允许读取。

就像我的文件夹被设置为开放阅读或其他什么。

最佳答案

如果您正在谈论的 imgURL 是所谓的下载 URL,那么这是预期的行为。 Firebase 的下载 URL 提供对文件的公共(public)只读访问,从而绕过安全规则。

如果您只想允许对数据进行安全访问,则不应生成下载 URL,而只能通过其他 SDK download methods 访问该文件。 .

关于Firebase存储读取安全规则似乎没有任何效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65746513/

相关文章:

javascript - firebase 函数在 onCreate firestore 事件中删除了错误流

firebase - 目标 URI 不存在 :'package:firebase_database/firebase_database.dart' ;

swift - Firebase 存储

禁止覆盖的 Firebase 存储规则

security - 在 firebase 中,我应该编写哪些安全规则来只允许推送到对象

ios - Firebase 通知仅出现在一台设备上

node.js - 错误: Not Found in firebase file storage

node.js - 尝试通过云功能将文件从存储上传到 FTP 服务器时超时

swift - 将文件上传到存储,不带扩展名

database - 我可以在 Cloud Firestore 中将集合设置为仅追加吗?