本页面介绍了如何修改密文的元数据。您可以更新密文的许多属性,例如加密类型、轮替政策、到期日期、标签和事件通知。您还可以添加注释并为密文版本设置别名。您无法修改密文名称或值以及复制政策。如需向密文添加新值,您必须创建新的密文版本。
所需的角色
如需获得更新密文元数据所需的权限,请让您的管理员为您授予Secret Manager 管理员 (roles/secretmanager.admin) 密文或项目的 IAM 角色。如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
您也可以通过自定义 角色或其他预定义 角色来获取所需的权限。
修改密文
如需修改密文,请使用以下方法之一:
控制台
-
在 Google Cloud 控制台中,前往 Secret Manager 页面。
-
如需修改密文,请使用以下选项之一:
-
在列表中找到密文,然后点击与该密文关联的 操作 菜单。在操作 菜单中,点击修改 。
-
点击密文名称以转到密文详情页面。在密文详情页面上, 点击 修改密文。
-
-
在修改密文 页面上,根据需要更新密文的属性,然后点击更新密文。
gcloud
在使用下面的命令数据之前, 请先进行以下替换:
- SECRET_ID:密文的 ID
- KEY:标签键
- VALUE:标签的对应值
执行以下命令:
Linux、macOS 或 Cloud Shell
gcloud secrets update SECRET_ID \ --update-labels=KEY=VALUE
Windows (PowerShell)
gcloud secrets update SECRET_ID ` --update-labels=KEY=VALUE
Windows (cmd.exe)
gcloud secrets update SECRET_ID ^ --update-labels=KEY=VALUE
响应会返回更新后的密文。
REST
在使用任何请求数据之前, 请先进行以下替换:
- PROJECT_ID: Google Cloud 项目 ID
- SECRET_ID:密文的 ID
- KEY:标签键
- VALUE:标签的对应值
HTTP 方法和网址:
PATCH https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID?updateMask=labels
请求 JSON 正文:
{'labels': {'KEY': 'VAL'}}
如需发送请求,请选择以下方式之一:
curl
将请求正文保存在名为 request.json 的文件中,然后执行以下命令:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID?updateMask=labels"
PowerShell
将请求正文保存在名为 request.json 的文件中,然后执行以下命令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID?updateMask=labels" | Select-Object -Expand Content
您应该收到类似以下内容的 JSON 响应:
{
"name": "projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID",
"createTime": "2024-09-02T07:14:00.281541Z",
"labels": {
"key": "value"
},
"etag": "\"16211dc7d040b1\""
}
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 范围进行身份验证。
修改多个密文的权限和标签
您可以使用 Google Cloud 控制台修改多个密文的权限和标签。
-
在 Google Cloud 控制台中,前往 Secret Manager 页面。
-
在 Secret Manager 页面上,选择要为其修改权限和标签的密文。
-
如果信息面板 已关闭,请点击显示信息面板 以显示信息。
-
为所有密文配置的权限和标签会显示在信息面板 中相应标签页下。前往各个标签页,并根据需要更新值。
-
完成后,点击保存 。
后续步骤
- 了解如何管理密文的访问权限。
- 了解如何为密文设置轮替时间表。
- 了解如何为密文设置通知。
- 了解如何为 Secret Manager 启用客户管理的加密密钥 (CMEK)。