【问题标题】:Permission problems for Firebase storage, can't download file from admin panelFirebase 存储的权限问题,无法从管理面板下载文件
【发布时间】:2023-03-08 14:45:01
【问题描述】:

我正在将文件从我的节点应用程序上传到 Firebase 存储。我使用密钥创建了新的服务帐户用户。上传完美,但我无法从 Firebase 管理面板下载任何文件。获取错误响应:

{
  "error": {
    "code": 401,
    "message": "Unauthorized.  Could not perform this operation. "
  }
}

我使用我的主要 gmail 帐户(即 Firebase 的所有者)登录,我认为它应该可以访问所有资源。 这些是我尝试过的权限设置:

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

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

service firebase.storage {
  match /b/{bucket}/o {
    match /{allPaths=**} {
      allow read, write;
    }
  }
}

他们都没有帮助我获得许可。

【问题讨论】:

  • 您上传和下载的代码是什么?
  • 我没有使用代码。正如我上面所说,问题是从 firebase 控制台(管理面板)下载数据。上传完美(不要认为上传代码在这里相关,它是一个小的 nodejs 应用程序),我可以看到文件,只是无法访问它们。这很奇怪,因为我是帐户的所有者并且拥有最高权限。

标签: firebase firebase-storage


【解决方案1】:

通过 Firebase 控制台下载文件依赖于您作为开发者对 GCS 存储桶的权限,而规则仅指定通过 Firebase 身份验证的用户的访问权限。

您可以查看您的GCS bucket permissions。如果您发现权限缺失,您可以授予自己存储管理员角色。

您可能拥有项目所有权,但没有存储桶的权限。如果存储桶说您无法添加权限,您仍然可以通过IAM & Admin 页面在项目级别授予自己存储管理员来解决此问题。

这将允许您在 Firebase 控制台中下载文件以及让您编辑存储桶权限。有关角色和权限的更多信息, 查看docs on IAM access control

【讨论】:

    【解决方案2】:

    我遇到了同样的“未经授权”错误。在某些时候,我们的应用无法从 Firebase 下载任何数据。在我们的案例中,Google Cloud Platform 帐户上的资金不足,因​​为如果您的计划是 Blaze,Firebase 需要资金。转到您的 GCP 的结算页面并查看它。在向我们的 GCP 联系人充值后,下载就开始正常工作了! Screenshot: Firebase - unauthorized

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-08
      • 2023-02-19
      • 1970-01-01
      • 2020-01-31
      • 1970-01-01
      • 2019-03-31
      相关资源
      最近更新 更多