使用您的联合身份登录 gcloud CLI

本文档介绍了如何使用基于浏览器的登录方式,通过您的联合身份登录 Google Cloud CLI。

准备工作

  1. 确保您的管理员已设置并配置员工身份联合

  2. 确保您拥有支持以下任一选项的信息。 您的管理员可以提供此信息。

获取登录配置文件

本部分介绍了如何获取可用于登录 gcloud CLI 的登录配置文件。

创建登录配置文件

您可以使用工作负载身份池 ID 和工作负载身份池提供商 ID 创建登录配置文件。

如需创建登录配置文件,请运行以下命令。您可以选择添加 --activate 标志,以将该文件激活为 gcloud CLI 的默认文件。 然后,您就可以运行 gcloud auth login,而无需每次都指定配置文件路径。

gcloud iam workforce-pools create-login-config \
    locations/global/workforcePools/WORKFORCE_POOL_ID/providers/PROVIDER_ID \
    --output-file=LOGIN_CONFIG_FILE_PATH

替换以下内容:

  • WORKFORCE_POOL_ID:员工池 ID
  • PROVIDER_ID:提供方 ID
  • LOGIN_CONFIG_FILE_PATH:您指定的配置文件的路径,例如 login.json

该文件包含 gcloud CLI 用于启用基于浏览器的身份验证流程的端点,并将受众群体设置为在员工身份池提供方中配置的 IdP。该文件不含机密信息。

输出类似于以下内容:

{
  "type": "external_account_authorized_user_login_config",
  "audience": "//iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID",
  "auth_url": "https://auth.cloud.google/authorize",
  "token_url": "https://sts.googleapis.com/v1/oauthtoken",
  "token_info_url": "https://sts.googleapis.com/v1/introspect",
}

如需阻止 gcloud auth login 自动使用此配置文件,您可以运行 gcloud config unset auth/login_config_file 来取消设置此文件。

您现在可以登录 gcloud CLI

保存登录配置文件

您可以将提供给您的凭据配置文件内容保存到文件中。记下该路径,然后登录 gcloud CLI

登录 gcloud CLI

如需使用登录配置文件登录 gcloud CLI,请运行以下命令:

gcloud auth login --login-config="LOGIN_CONFIG_FILE_PATH"

如果您之前未激活登录配置文件,请将 LOGIN_CONFIG_FILE_PATH 替换为该文件的路径。 不过,如果您之前已使用 --activate 标志激活此文件,则无需再次指定该文件。请改为运行以下命令:

gcloud auth login