Firebase存储规则`request.resource.md5hash`为null

时间:2016-09-17 13:31:23

标签: firebase firebase-security firebase-storage

我正在尝试使用FireBase后端构建一个Web应用程序,我有一个存储规则如下:

service firebase.storage {
  match /b/stuff.appspot.com/o {
    match /images/{fname}
    {
      allow read: if true;
      allow write: if request.resource.md5hash != null;
    }
  }
}

但是,当我尝试将数据放到images/filename时,我收到storage/unauthorized错误。如果我删除条件并设置为true,则它会按预期工作,因此我认为request.resource.md5hash为空。

我错过了什么?因为我希望任何文件都有一个非null的md5哈希。

附加说明:

  • 如果删除md5条件并上传文件而不进行任何检查,我可以在上传文件的客户端中获取md5Hash。因此,实际上正在计算哈希值。
  • the reference about storage rules md5hash字段中使用,因此预计会有效。

1 个答案:

答案 0 :(得分:3)

两件事:

  1. 该属性实际上是md5Hash(我们的参考文档错误,我只修了它们)
  2. md5Hash目前尚未传递给规则(是的,它是一个错误,我们现在正在修复它,尽管需要一些时间才能投入生产)
  3. 我们正在努力传递MD5,所以紧紧抓住:)

相关问题