0

我正在使用 getSignedUrl 获取视频的公共认证 url。它在我的本地机器上运行良好。但在 GKE 中部署后,它无法正常工作。我已经使用 Firebase getSignedUrl()检查了有关 SigningError 的相关问题。但我没有看到 GKE 的服务帐户来配置这些角色。在创建 kubernetes 线索者时,我已经为集群分配了完整的存储和服务启用权限。

我是否必须添加更多权限才能消除此错误,还是应该执行其他任何操作。

4

1 回答 1

1

这个问题得到了解决。我已按照此链接https://cloud.google.com/kubernetes-engine/docs/tutorials/authenticating-to-cloud-platform#console解决此问题。

我们必须从 GKE 访问服务帐户。GKE 不直接访问 Google 云服务帐户。我已按照以下步骤从 GKE 访问谷歌云服务帐户。

  1. 我们必须创建具有所需角色的服务帐户 - 存储对象创建者和服务帐户令牌创建者。
  2. 生成一个密钥并将 json 文件保存在您的应用程序中一次。
  3. 将 volume、volumeMounts、GOOGLE_APPLICATION_CREDENTIALS 环境变量添加到 deployment.yaml
  4. 利用kubectl create secret generic [key name] --from-file=key.json=PATH-TO-KEY-FILE.json
  5. 使用 部署您的清单kubectl apply -f deployment.yaml

这些步骤将提供对存储和服务帐户的访问,这将修复signingError。

于 2020-10-21T11:02:15.483 回答