使用 Secret Manager 创建和访问密文

了解如何使用 Secret Manager 创建和访问密文 Google Cloud。


如需在 Google Cloud 控制台中直接遵循有关此任务的分步指导,请点击操作演示:

操作演示


准备工作

  1. 为每个项目启用一次 Secret Manager API
  2. 在项目、文件夹或组织中分配 Secret Manager 管理员角色 (roles/secretmanager.admin)。
  3. 使用以下任一方式向 Secret Manager API 进行身份验证:

    • 如果您使用客户端库访问 Secret Manager API,请设置 应用默认凭证
    • 如果您使用 Google Cloud CLI 访问 Secret Manager API, 请使用您的 Google Cloud CLI 凭据 进行身份验证。
    • 如需对 REST 调用进行身份验证,请使用 Google Cloud CLI 凭据或应用默认凭据。

创建密文并访问密文版本

以下示例演示了如何创建密文并访问密文版本的内容。

控制台

如需创建密文和密文版本,请按以下步骤操作:

  1. 前往 Google Cloud 控制台的 Secret Manager 页面。

    转到 Secret Manager 页面

  2. Secret Manager 页面上,点击创建密钥

  3. 创建密钥页面的名称下,输入 my-secret

  4. 密文值字段中,输入 my super secret data

  5. 点击创建密钥按钮。

如需访问密文版本的内容,请按下列步骤操作:

  1. 前往Secret Manager页面,在 Google Cloud 控制台中。

    转到 Secret Manager 页面

  2. Secret Manager 页面上,点击 my-secret

  3. 密文详情页面的版本表格中,找到版本 1

  4. 操作列中,点击查看更多

  5. 从菜单中点击查看密文值

  6. 将出现一个显示 Secret 值的对话框。点击完成 以关闭对话框。

gcloud

要在命令行上使用 Secret Manager,请先 安装或升级到 Google Cloud CLI 版本 378.0.0 或更高版本。 在 Compute Engine 或 GKE 上,您必须 使用 cloud-platform 范围进行身份验证

如需创建密文并将字符串存储为第一个密文版本的内容:

$ echo -n "my super secret data" | gcloud secrets create my-secret \
    --replication-policy="replication-policy" \
    --data-file=-

其中,replication-policyautomaticuser-managed

如需访问特定密文版本的内容:

$ gcloud secrets versions access 1 --secret="my-secret"

如需访问最新密文版本的内容:

$ gcloud secrets versions access latest --secret="my-secret"

C#

要运行此代码,请先 设置 C# 开发环境安装 Secret Manager C# SDK。 在 Compute Engine 或 GKE 上,您必须 使用 cloud-platform 范围进行身份验证


using System;
using System.Text;
using Google.Api.Gax.ResourceNames;
using Google.Cloud.SecretManager.V1;
using Google.Protobuf;

public class QuickstartSample
{
    public void Quickstart(string projectId = "my-project", string secretId = "my-secret")
    {
        // Create the client.
        SecretManagerServiceClient client = SecretManagerServiceClient.Create();

        // Build the parent project name.
        ProjectName projectName = new ProjectName(projectId);

        // Build the secret to create.
        Secret secret =