ios - 尽管规则设置为私有(private),但我的 firebase 存储不是私有(private)的

标签 ios firebase react-native firebase-storage

背景:我正在构建一个 React Native iOS 应用程序,它将涉及上传图像并能够从应用程序内访问它们(但不是公开的)。

在我的 Firebase 存储规则中,我有以下内容:

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

据我了解,只有经过授权的 Firebase 用户才能访问这些文件。但是,我上传了一张我可以在任何浏览器中访问的图片:

https://firebasestorage.googleapis.com/v0/b/boiling-heat-632.appspot.com/o/download.jpeg?alt=media&token=7a8708c5-3dda-4088-b456-6dffd6ffc006

我的安全规则有问题吗?谢谢

最佳答案

您提供的链接是一个公共(public)网址,将为所有 Firebase 存储对象生成/可以生成该网址。它称为下载 URL。它被认为是不可猜测的,所以你不必担心它在那里。您可能会发现,如果您尝试通过 Firebase 存储框架(使用对象路径)访问您的存储对象,您将不会被允许这样做。

希望这能回答你的问题

更新: 有关更多信息,请参阅此 question

关于ios - 尽管规则设置为私有(private),但我的 firebase 存储不是私有(private)的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43967730/

相关文章:

ios - 具有 UITapGestureRecognizer 的 View 中的 UIButton

android - 如何等待 firebase 数据获取完成并获取不是 react native promise 的值?

android - Firestore 快照监听器。在影响性能之前我可以听多少

javascript - 如果与 firebase 连接,如何让网站没有本地存储或 session 存储?

react-native - React Native 只允许 TextInput 的小写输入

ios - 有很多圈子的 UIView

ios - 碰撞后如何阻止分数增加一以上?

javascript - 即使在绑定(bind)函数之后 this.variable 也没有定义?

ios - Firebase 将旧数据加载到 TableView 中

css - React-Native 对齐问题