相关疑难解决方法(0)

如何将我的 gcloud 用户信用安全地放入容器中,并在本地测试时使用它们来模拟服务帐户?

从这个开始:

  • 用户拥有自己的 Google 用户帐户,这些帐户是通过 gcloud 登录在本地设置的
  • 应用程序以通常的方式使用 gcp API - 默认情况下它将查找 GOOGLE_APPLICATION_CREDENTIALS、GCE 角色、服务帐户,或使用本地用户 gcloud 配置的凭据
  • 当用户在本地运行它时,它将使用自己的用户帐户,当在 gcp 中运行时,它将使用服务帐户
  • 用户的帐户还有权模拟服务帐户。因此,当用户首先在本地运行应用程序时,gcloud config set auth/impersonate_service_account [SA_FULL_EMAIL]它可以使用与在开发环境中运行的相同的信用来运行,而无需下载任何密钥

现在可以了。但我也希望能够在容器中本地运行应用程序。使用 docker/docker-compose/minikube/etc 如何才能模拟服务帐户?

容器需要访问gcloud凭据,并且在应用程序启动之前还需要在会话中设置模拟。这不能在代码中完成 - 应用程序应该正常使用 API,而不必做任何不同的事情。

编辑:当应用程序在开发或生产 GCP 帐户/项目中运行时,它们在具有该特定应用程序的正确范围权限的服务帐户的上下文中运行。开发人员自己的用户帐户对开发环境具有广泛的权限。在本地运行时,使用与应用程序在开发环境中运行相同的服务帐户运行而不是开发人员自己的用户帐户非常有用

google-cloud-platform gcloud google-iam

5
推荐指数
1
解决办法
1063
查看次数

标签 统计

gcloud ×1

google-cloud-platform ×1

google-iam ×1