在 Cloud Code for IntelliJ 中使用 Secret Manager 管理 Secret

借助 Cloud Code 的 Secret Manager 集成,您可以在 IDE 中创建、查看、更新和使用密文,而无需在代码库中添加密文。

本页面介绍了如何在 IDE 中访问 Secret Manager,以及如何开始创建和管理密文。

启用 Secret Manager

使用 Cloud Code 管理密文时,密文会安全地存储在 Secret Manager 中,您可以根据需要以编程方式提取。您只需要启用 Secret Manager API 以及管理密文所需的权限:

  1. 如需启动 Secret Manager,请点击 Cloud Code 右侧边栏中的 Secret Manager 标签页。

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

  2. 如果您尚未启用 Secret Manager API,则 Cloud Code 会提示您通过点击启用 API在 Secret Manager 面板中启用它。

    您的密文也必须与应用代码位于同一项目中;确保您已选择正确的项目,或使用 Secret Manager 面板中的项目选择器进行切换。

    启用 Secret Manager 面板中可用的 API 链接

创建和查看密文

创建密文

您可以使用以下某种方法创建密文:

使用 Secret Manager 面板

  1. 导航到 Secret Manager 面板。

  2. 点击添加图标。

    这时会启动“创建密文”对话框,您可以在其中设置密文的项目、名称和值,以及选择地区来存储密文并选择标签来整理密文。

    这时会打开“创建密文”对话框,其中“名称”字段中填写了“life”,而“密文值”字段中填写了“42”

使用编辑器

  1. 在编辑器中打开其中包含您想要以密文形式存储的文本的文件。
  2. 突出显示并右键点击此文本。

    从菜单中选择 Create Secret in Secret Manager... 菜单项。此操作会打开“创建密文”对话框,其中的密文值中填充了突出显示的文本。您可以在此处自定义密文的项目、名称、值、地区和标签。

使用 Project Explorer

  1. 在 Project Explorer 中,不需要突出显示任何文本,请右键点击相应文本。
  2. 从菜单中选择 Create Secret in Secret Manager... 菜单项。此时将打开“创建密文”对话框。在此处选择密文的项目、名称、值、地区和标签,并在完成后点击确定

创建新版密文

如果您已有密文并且想要更新密文,您可以导航到 Secret Manager 面板的版本标签页来执行此操作:

  1. 点击版本标签页中的添加图标。

    这将启动“添加新版本”对话框,在该对话框中,您可以使用“密文值”字段或导入文件来设置现有密文的值。

    这时会打开“添加新版本”对话框,其中密文“test-secret”的“密文值”字段更新为“bar”

  2. 如果您希望移除密文的所有旧版本,并仅保留创建的新版本,请选择停用所有旧版本

  3. 点击确定并添加版本后,您会看到最新的密文版本,并且版本标签页下将列出密文的所有版本(如果适用)。

查看密文

如需查看密文,在 Secret Manager 面板中,请从显示在“密文名称”部分的列表中选择密文。概览标签页中列出了其名称、复制政策、创建时间戳和资源 ID 等详细信息。

您还可以右键点击该密钥,然后选择在 Cloud 控制台中打开,以在浏览器中查看和管理该密钥。

查看密文版本

如要查看密文的版本,请从“密文名称”部分显示的列表中选择密文,然后选择版本标签页。

右键点击要执行操作的密文版本,然后从可用选项中进行选择。查看密文值、复制版本 ID、启用或停用版本以及销毁所选版本。

为密文“test”和两个可用的版本选择版本标签时,“2”和“3”以及他们的创建时间都将以表格的形式列出。右键单击“3”,然后选择“启用密文版本”

从应用访问密文

创建密文后,您可以将其添加在代码中并设置身份验证。

Secret Manager 面板的 Code 标签页列出了访问您代码中的密文所需的步骤

要从应用访问新创建的密文,请按以下步骤操作:

  1. 安装 Secret Manager 客户端库。

    导航到工具 > Cloud Code > 添加 Cloud 库和管理 Cloud API,然后从 Google Cloud API 资源管理器树中选择 Secret Manager > Secret Manager API。请按照“安装客户端库”部分中特定语言的说明执行操作。

  2. 在您的应用代码中自定义并添加相关代码段

  3. 最后,要完成身份验证设置,您需要遵循客户端库身份验证指南:

    • 本地开发:如果您是在本地集群(如 minikube、Docker Desktop)或本地模拟器中进行开发,则应完成本地开发部分中所述的与您的工作流相关的步骤。
    • 远程开发:如果您是在应用中使用 GKE 集群或 Cloud Run 服务,则应完成远程开发部分中所述的与您的工作流相关的步骤,其中包括用于在服务账号上设置必需角色的说明 Secret Manager 专用说明。

获取支持

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