本主题介绍了如何创建密文。密文包含一个或多个密文版本,以及标签和复制信息等元数据。通过 Secret 的实际内容存储在 Secret 版本中。
准备工作
- 为每个项目启用一次 Secret Manager API。
- 针对项目、文件夹或组织分配 Secret Manager Admin 角色 (
roles/secretmanager.admin
)。 使用以下任一方法向 Secret Manager API 进行身份验证:
- 如果您使用客户端库访问 Secret Manager API,请设置应用默认凭据。
- 如果您使用 Google Cloud CLI 访问 Secret Manager API,请使用您的 Google Cloud CLI 凭据进行身份验证。
- 如需对 REST 调用进行身份验证,请使用 Google Cloud CLI 凭据或应用默认凭据。
创建 Secret
控制台
-
转到 Google Cloud 控制台中的 Secret Manager 页面。
-
在 Secret Manager 页面上,点击创建密钥。
-
在创建密钥页面的名称下,输入密钥的名称(例如
my-secret
)。 Secret 名称可以包含大写和小写字母、数字、连字符和下划线。允许的名称长度上限为 255 个字符。 -
可选:如需在创建初始 Secret 时也添加 Secret 版本,请在 Secret 值字段中输入 Secret 值(例如
abcd1234
)。Secret 值可以采用任何格式,但不得超过 64 KiB。您还可以使用上传文件选项上传包含 Secret 值的文本文件。 -
点击创建密钥按钮。
gcloud
如需在命令行上使用 Secret Manager,请先安装或升级到 Google Cloud CLI 378.0.0 或更高版本。在 Compute Engine 或 GKE 上,您必须使用 cloud-platform 范围进行身份验证。
$ gcloud secrets create secret-id \
--replication-policy="automatic"
C#
如需运行此代码,请先设置 C# 开发环境并安装 Secret Manager C# SDK。在 Compute Engine 或 GKE 上,您必须使用 cloud-platform 范围进行身份验证。
Go
如需运行此代码,请先设置 Go 开发环境并 安装 Secret Manager Go SDK。 在 Compute Engine 或 GKE 上,您必须使用 cloud-platform 范围进行身份验证。
Java
如需运行此代码,请先设置 Java 开发环境并安装 Secret Manager Java SDK。 在 Compute Engine 或 GKE 上,您必须使用 cloud-platform 范围进行身份验证。
Node.js
如需运行此代码,请先设置 Node.js 开发环境并安装 Secret Manager Node.js SDK。 在 Compute Engine 或 GKE 上,您必须使用 cloud-platform 范围进行身份验证。
PHP
如需运行此代码,请先了解如何在 Google Cloud 上使用 PHP 和安装 Secret Manager PHP SDK。 在 Compute Engine 或 GKE 上,您必须使用 cloud-platform 范围进行身份验证。
Python
如需运行此代码,请先设置 Python 开发环境并 安装 Secret Manager Python SDK。 在 Compute Engine 或 GKE 上,您必须使用 cloud-platform 范围进行身份验证。
Ruby
如需运行此代码,请先设置 Ruby 开发环境并安装 Secret Manager Ruby SDK。在 Compute Engine 或 GKE 上,您必须使用 cloud-platform 范围进行身份验证。
API
这些示例使用 curl 来使用 API 演示。 您可以使用 gcloud auth print-access-token 生成访问令牌。在 Compute Engine 或 GKE 上,您必须使用 cloud-platform 范围进行身份验证。
$ curl "https://secretmanager.googleapis.com/v1/projects/project-id/secrets?secretId=secret-id" \
--request "POST" \
--header "authorization: Bearer $(gcloud auth print-access-token)" \
--header "content-type: application/json" \
--data "{\"replication\": {\"automatic\": {}}}"
如需为您的 Secret 选择合适的复制政策,请参阅选择复制政策。
添加 Secret 版本
Secret Manager 会使用 Secret 版本自动对 Secret 数据进行版本控制,大多数情况
对密钥版本执行访问、销毁、停用和启用等操作。
借助 Secret Manager,您可以将 Secret 固定到 42
或浮动式等特定版本
类似于 latest
的别名。了解如何添加 Secret 版本。
访问 Secret 版本
如需访问特定 Secret 版本中的 Secret 数据以便成功进行身份验证, 请参阅访问密钥版本。
后续步骤
- 了解如何选择复制政策。
- 了解如何管理对 Secret 的访问权限。
- 了解如何为 Secret 设置通知。