在 Cloud Code for IntelliJ 中管理 Cloud API 和库

借助 Cloud API,您可以通过自己的代码访问 Google Cloud 产品和服务。这些 Cloud API 提供了一个简单的 JSON REST 接口,您可以通过客户端库调用该接口。

本文介绍了如何浏览可用 API、启用 Cloud API 并将 Cloud 客户端库添加到您的项目中,以及如何根据您的开发需求设置身份验证。

浏览 Cloud API

如需浏览您的 IDE 中所有可用的 Google Cloud API,请按照以下步骤操作:

  1. 选择 Tools > Cloud Code > Add Cloud Libraries and Manage Cloud APIs
  2. 展开 Google Cloud API 资源管理器树,查看所有可用的 API。 该资源管理器按类别对 Cloud API 分组。 您还可以使用 Search API 搜索栏查找特定 API。
  3. 显示资源管理器树中所示 Cloud API 列表的屏幕截图。
  4. 点击某个 API 以查看更多详细信息,例如其状态、相应客户端库的特定语言的安装说明以及相关文档。

启用 Cloud API

如需使用 API 详细信息为项目快速启用 Cloud API,请按照以下步骤操作:

  1. 在 Cloud API 详细信息视图中,选择要为其启用 Cloud API 的 Google Cloud 项目。
  2. 点击启用 API 按钮。

    启用 API 后,您会看到一条有关这项更改的确认消息。

添加 Cloud 客户端库

如需在 IntelliJ 中向项目添加库,请按照以下步骤操作:

对于 Java Maven 项目

  1. 选择工具 > Cloud Code > Cloud API
  2. 管理 Google Cloud API (Manage Google Cloud APIs) 对话框会显示支持的库。

    显示“管理 Cloud API”对话框的屏幕截图。此对话框提供一个用于选择要添加库的模块的下拉菜单,显示可供添加的 API 列表,并提供显示 API 相关信息的工作区。
  3. 从 Google Cloud 客户端库(推荐)或 Java Spring Google Cloud Library 中选择您偏好的库类型。
  4. Module 下拉菜单中,选择要向其中添加库的模块。
  5. 点击 Add Maven Dependency,向您的项目添加物料清单和客户端库。

对于其他所有项目

  1. 选择 Tools > Cloud Code > Add Cloud Libraries and Manage Cloud APIs
  2. Add Google Cloud Libraries 对话框会显示支持的库。

    显示“Add Cloud Libraries”对话框的屏幕截图。此对话框显示可供添加的 API 列表,并提供显示 API 相关信息的工作区。
  3. 按照 API 详细信息页面上针对您的首选语言列出的安装说明安装 API。

设置身份验证

启用所需的 API 并添加必要的客户端库后,您需要对应用进行配置,以便成功通过身份验证。您的配置取决于您的开发类型和运行所在的平台。

完成相关身份验证步骤后,您的应用即可进行身份验证并准备好部署。

本地开发

minikube

  1. 通过运行 gcloud auth application-default login,确保您已设置“应用默认凭据”(ADC)。这样,minikube 就能找到您的 ADC 以进行身份验证。

minikube

  1. 通过运行 gcloud auth application-default login,确保您已设置“应用默认凭据”(ADC)。这样,minikube 就能找到您的 ADC 以进行身份验证。
  2. 使用 minikube start --addons gcp-auth 启动 minikube。此操作会将您的 ADC 装载到 pod 中。如需详细了解 Google Cloud 的 minikube 身份验证指南,请参阅 minikube gcp-auth 文档

本地 Kubernetes 集群

  1. 通过运行 gcloud auth application-default login,确保您已设置“应用默认凭据”(ADC)。
  2. 通过修改部署清单,将您的本地 gcloud 目录装载到 Kubernetes pod 中,以便 Google Cloud 客户端库能够找到您的凭据。Kubernetes pod 配置示例:
    apiVersion: v1
    kind: Pod
    metadata:
      name: my-app
      labels:
        name: my-app
    spec:
      containers:
      - name: my-app
        image: gcr.io/google-containers/busybox
        ports:
          - containerPort: 8080
        volumeMounts:
          - mountPath: /root/.config/gcloud
            name: gcloud-volume
      volumes:
        - name: gcloud-volume
          hostPath:
            path: /path/to/home/.config/gcloud

Cloud Run

  1. 通过运行 gcloud auth application-default login,确保您已设置“应用默认凭据”(ADC)。这样,Cloud Run 本地模拟环境就能找到您的 ADC 以进行身份验证。

远程开发

Google Kubernetes Engine

  1. 使用 Workload Identity 配置 GKE 集群和应用,以对 GKE 上的 Google Cloud 服务进行身份验证。此操作会将您的 Kubernetes 服务账号与您的 Google 服务账号相关联。
  2. 如果您尝试访问的 Google Cloud 服务需要其他角色,请为您用于开发应用的 Google 服务账号授予角色。
    如需查看您可以向身份授予的 IAM 角色类型和预定义角色列表,请参阅了解角色指南。如需了解授予角色的步骤,请参阅授予、更改和撤消对资源的访问权限
  3. 通过在 Kubernetes 部署 YAML 文件中设置 .spec.serviceAccountName 字段,配置 Kubernetes 部署以引用 Kubernetes 服务账号。
    如果您使用的是基于 Cloud Code 模板创建的应用,则此文件位于 kubernetes-manifests 文件夹下。

Cloud Run

  1. 如需创建用于部署 Cloud Run 应用的新唯一服务账号,请在“服务账号”页面上选择存储密文的项目。

    转到“服务账号”页面

  2. 点击创建服务帐号
  3. 创建服务帐号对话框中,为服务帐号输入一个描述性名称。
  4. 服务账号 ID 更改为一个可识别的唯一值,然后点击创建
  5. 如果您尝试访问的 Google Cloud 服务需要其他角色,请授予角色,点击继续,然后点击完成
  6. 如需将您的服务账号添加到部署配置,请导航到 Cloud Run:部署 (Cloud Run: Deploy) 运行配置,展开高级修订版本设置 (Advanced revision settings) 部分,然后在服务账号字段中指定您的服务账号。
    “Cloud Run:部署”中展开了“高级修订版本设置”部分,并且“服务账号”字段中已填写服务账号名称(格式为 service-account-name@project-name.iam.gserviceaccount.com)

Cloud Run

  1. 使用 Workload Identity 配置 GKE 集群和应用,以对 GKE 上的 Google Cloud 服务进行身份验证。此操作会将您的 Kubernetes 服务账号与您的 Google 服务账号相关联。
  2. 如果您尝试访问的 Google Cloud 服务需要其他角色,请为您用于开发应用的 Google 服务账号授予角色。
    了解角色指南介绍了 IAM 角色类型并列出您可以授予身份的可用预定义角色。
  3. 如需将 Kubernetes 服务账号添加到部署配置,请导航到 Cloud Run:部署 (Cloud Run: Deploy) 运行配置,展开高级修订版本设置 (Advanced revision settings) 部分,然后在服务账号字段中指定 Kubernetes 服务账号。
    “Cloud Run:部署”中展开了“高级修订版本设置”部分,并且“服务账号”字段中已填写 Kubernetes 服务账号名称

已启用 Secret Manager 的远程开发

如果您正在进行远程开发并通过使用服务账号进行身份验证,且您的应用使用secrets,则需要完成几个步骤以便为 Google 服务账号分配访问特定 Secret Manager 密文所需的角色:

  1. 打开 Secret Manager 面板,并选择您要在代码中访问的密文。

    在右侧边栏和打开的 Secret Manager 面板中突出显示了 Cloud Code 中的 Secret Manager,其中的三个密文以及密文“测试”的版本详情列在底部窗格中

  2. 切换到“权限”标签页,然后点击修改修改权限来配置密钥的权限。Secret 的 Secret Manager 配置页面将在网络浏览器中打开。

    在 Secret Manager 中选择了“权限”标签页且突出显示了“修改权限”图标

  3. 在 Google Cloud 控制台中,点击显示信息面板,然后点击添加主账号

  4. 为您的服务账号分配 Secret Manager Secret Accessor 角色。

    您的服务账号有权访问此 Secret。

获取支持

如需在 IntelliJ IDE 中提交反馈或报告问题,请依次前往 Tools > Cloud Code > Help / About > Submit feedback or Report an issue,以便在 GitHub 上报告问题,或者在 Stack Overflow 上提问。