有没有办法非全局激活一个 Google 云服务帐户?

Is there a way to activate a Google cloud service account non-globally?

我有这样的需求,需要在不同的项目上操作不同的服务。因此我需要同时激活多个服务帐户来完成这些工作。这些服务帐户的角色受到很好的控制,因此无法在所有项目上为 运行 创建一个类似于 "admin" 的帐户。所以我想知道是否有一种方法可以仅在当前进程或某些隔离环境中激活一个服务帐户,而不影响全局 [​​=11=] 设置。任何建议表示赞赏。

您可以使用 glcoud config configurations 并将多个帐户配置设置为 select。

然后用--configuration=configuration_name到select用哪一个:gcloud compute instances list --configuration=NAME

运行 gcloud init 和 select Create a new configuration

您可以使用 gcloud config configurations activate NAME 更改默认配置。

我写了一篇记录 gcloud 配置的文章:

Google Cloud – Understanding Gcloud Configurations

您还可以激活服务帐户凭据,这将成为 gcloud config configurations 的一部分。

Creating and Authorizing Service Account Credentials with the CLI

gcloud auth activate-service-account test@development-123456.iam.gserviceaccount.com --key-file=test_google_account.json