在工作站中对 API 访问权限进行身份验证和设置

本文介绍了如何在 工作站。 如需了解有关 Google Cloud 身份验证的一般信息,请参阅 身份验证概览

使用 Google Cloud CLI 对用户进行身份验证

启动 Cloud Workstations 后,您可以通过 gcloud CLI 使用自己的用户账号访问 Google Cloud 服务和 API。

  1. 在工作站中打开一个终端。打开终端窗口的方式取决于 您使用的 IDE。 例如,如果您使用的是 Cloud Workstations 基本编辑器,请打开 选择终端 > 新建终端,或者按 Ctrl+Shift+` 组合键。
  2. 使用以下命令进行身份验证:
    gcloud auth login --no-launch-browser
  3. 按照命令提供的说明向 Google Cloud 进行身份验证。
  4. 使用以下命令指定您的 Google Cloud 项目 ID:
    gcloud config set project PROJECT_ID
  5. 启用应用默认凭据,以便调用 Google Cloud 服务。
    gcloud auth application-default login
  6. 您的 gcloud CLI 凭据现已保存,当您在 课程。

向工作站发出 HTTP 请求

如需向工作站发出 HTTP 请求,您需要拥有一个账号的访问令牌,该账号在相应工作站上具有 Cloud Workstations User 角色:

  1. 使用 generateAccessToken API 方法生成访问令牌。
  2. 添加一个名为 Authorization 且值为 Bearer $TOKEN 的 HTTP 标头。

在浏览器中连接到工作站

在浏览器中打开工作站网址会自动通过重定向到工作站服务器进行身份验证,并检索由 generateAccessToken API 方法生成的访问令牌。这会重定向回您的工作站,并设置 对当前工作站会话有效的身份验证 Cookie。

如需跳过此重定向,请使用 _workstationAccessToken 网址 参数:

  1. 使用 generateAccessToken API 方法。
  2. 在浏览器中打开您的工作站网址,然后附加一个网址参数,格式如下:_workstationAccessToken=TOKEN

这会在浏览器中设置一个身份验证 Cookie,以允许您当前的工作站会话访问该服务。跳过重定向可能会有帮助 当网络政策禁止访问工作站服务器时,或者 使用 iframe 在其他网站中显示工作站时。

模拟服务账号

如果贵组织的安全政策阻止用户账号获取所需的权限,您还可以模拟服务账号。如需模拟工作站配置中指定的服务账号,您可以指定服务账号权限范围字段。

        gcloud workstations configs create CONFIG \
            --cluster=CLUSTER \
            --region=REGION \
            --project=PROJECT \
            --service-account=SERVICE_ACCOUNT \
            --service-account-scopes=https://www.googleapis.com/auth/cloud-platform
      
如果指定了此配置,则在此配置下工作站的用户必须对服务账号具有 iam.serviceAccounts.actAs 权限。如需详细了解如何为服务账号指定范围,请参阅访问权限范围

后续步骤