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

问题描述 投票:0回答:1

以此开头:

  • 用户拥有自己的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​​,而不必做其他任何事情。

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

从此开始:用户拥有自己的Google用户帐户,这些帐户通过gcloud登录在本地设置,应用程序以通常的方式使用gcp API-默认情况下,它将查找...

google-cloud-platform gcloud google-iam
1个回答
1
投票
实现此目的的正确方法是Google Cloud提供的Secret Manager。
© www.soinside.com 2019 - 2024. All rights reserved.