手动旋转私钥
通过 IBM Cloud® Secrets Manager,您可以手动创建私钥的新版本。
在旋转服务实例中的秘密时,会创建其值的新版本。 轮换凭证会限制单个私钥可访问受保护资源的时间长度,这可保护您的企业免受与已泄密的凭证相关联的风险的影响。 定期轮换私钥,例如每 30 或 60 天轮换一次,以便您始终能够满足有关私钥管理的最佳实践。
准备工作
开始之前,请确保您具有所需的访问级别。 要轮换私钥,您需要 写入者 服务角色或更高级别的。
受支持的密钥类型
可以根据需要旋转和替换存储在 Secrets Manager 中的所有私钥。 Secrets Manager 如何评估用于轮换私钥的请求取决于私钥类型。
类型 | 旋转描述 |
---|---|
任意私钥 | 任意私钥将立即替换为您在轮换时提供的数据。 |
IAM 凭证 | 将根据服务标识和 API 密钥组成的 IAM 凭证的初始配置立即重新生成。 如果 IAM 凭证私钥是使用帐户中的现有服务标识创建的,那么仅在手动轮换过程中重新生成 API 密钥。 相反,如果通过选择访问组来创建私钥,那么将在手动轮换服务标识和 API 密钥值时重新生成这些值。 重要:IAM凭证的“在租赁到期前重复使用 ( reuse_api_key )”选项会影响是否能够手动轮换。 如果此字段为 false 或在 UI 中设置为 Off,那么不支持手动旋转。 每次读取时为私钥动态生成的 API 密钥已是单一使用的临时值。 |
导入的证书 | 最初导入到服务实例的证书将立即替换为轮换时重新导入的数据。 |
键值私钥 | 键值私钥将立即替换为您在轮换时提供的数据。 |
专用证书 | 专用证书将立即替换为由其父级或颁发认证中心签署的证书。 |
公用证书 | 公用证书将移至 Active,Rotation pending 状态,以指示正在处理用于轮换证书的请求。Secrets Manager 将请求发送到配置的认证中心 (CA),例如 Let 's Encrypt,以验证域的所有权。 如果验证成功完成,那么将发放新证书。 |
用户凭证 | 与用户凭证私钥关联的密码将立即替换为您在轮换时提供的数据。 |
服务凭证 | 服务凭据密文将被新的密文取代。 在定义的 TTL 剩余时间内,上一个秘密仍然有效。 |
自定义凭证 | 自定义凭据密文将被新密文取代。 在定义的 TTL 剩余时间内,前一个秘密仍然有效。 |
请注意,对于为数据库创建的服务凭证,如果除了凭证之外,您还在更改所创建凭证的数据库许可权,那么一旦轮换了服务凭证,将不会同步这些凭证。 当轮换数据库服务凭证时,这被视为身份轮换。
在 UI 中创建新的私钥版本
您可以使用 Secrets Manager UI 手动轮换私钥和证书。
旋转任意私钥
您可以使用 Secrets Manager UI 手动轮换任意私钥。
- 在控制台中,单击 菜单 图标
> 资源列表。
- 从服务列表中,选择 Secrets Manager的实例。
- 在 Secrets Manager UI 中,转至 密钥 列表。
- 在要旋转的私钥所在的行中,单击 操作 菜单
> 旋转。
- 选择新文件或输入新的私钥值。
- 可选: 将元数据添加到私钥或私钥的特定版本。
- 上载文件或输入 JSON 格式的元数据和版本元数据。
- 要立即轮换私钥,请单击 旋转。
- 可选: 检查版本历史记录以查看最新更新。
创建新版本的键值私钥
您可以使用 Secrets Manager UI 来手动轮换密钥值私钥。
- 在控制台中,单击 菜单 图标
> 资源列表。
- 从服务列表中,选择 Secrets Manager的实例。
- 在 Secrets Manager UI 中,转至 密钥 列表。
- 在要旋转的私钥所在的行中,单击 操作 菜单
> 旋转。
- 选择文件或输入 JSON 格式的新私钥值。
- 可选: 将元数据添加到私钥或私钥的特定版本。
- 上载文件或输入 JSON 格式的元数据和版本元数据。
- 要立即轮换私钥,请单击 旋转。
- 可选: 检查版本历史记录以查看最新更新。
创建用户凭证的新版本
您可以使用 Secrets Manager UI 来手动轮换与用户凭证私钥相关联的密码值。
-
在控制台中,单击 菜单 图标
> 资源列表。
-
从服务列表中,选择 Secrets Manager的实例。
-
在 Secrets Manager UI 中,转至 密钥 列表。
-
在要旋转的私钥所在的行中,单击 操作 菜单
> 旋转。
-
确定是输入您自己的密码还是生成新的密码。
如果选择生成新密码,那么 Secrets Manager 会将现有值替换为随机生成的包含大写字母,小写字母,数字和符号的 32 个字符的密码。
-
可选: 将元数据添加到私钥或私钥的特定版本。
- 上载文件或输入 JSON 格式的元数据和版本元数据。
-
要立即轮换私钥,请单击 旋转。
-
可选: 检查版本历史记录以查看最新更新。
创建IAM凭证的新版本
您可以使用 Secrets Manager UI 手动轮换与 IAM 凭证私钥相关联的密码值。
- 在控制台中,单击 菜单 图标
> 资源列表。
- 从服务列表中,选择 Secrets Manager的实例。
- 在 Secrets Manager UI 中,转至 密钥 列表。
- 在要旋转的私钥所在的行中,单击 操作 菜单
> 旋转。
- 可选: 将元数据添加到私钥或私钥的特定版本。
- 上载文件或输入 JSON 格式的元数据和版本元数据。
- 要立即轮换私钥,请单击 旋转。
- 可选: 检查版本历史记录以查看最新更新。
创建服务凭证的新版本
您可以使用 Secrets Manager UI 来手动轮换与服务凭证私钥相关联的密码值。
- 在控制台中,单击 菜单 图标
> 资源列表。
- 从服务列表中,选择 Secrets Manager的实例。
- 在 Secrets Manager UI 中,转至 密钥 列表。
- 在要旋转的私钥所在的行中,单击 操作 菜单
> 旋转。
- 可选: 将元数据添加到私钥或私钥的特定版本。
- 上载文件或输入 JSON 格式的元数据和版本元数据。
- 要立即轮换私钥,请单击 旋转。
- 可选: 检查版本历史记录以查看最新更新。
创建自定义凭证的新版本
您可以使用 Secrets Manager UI 手动旋转与自定义凭据密级相关联的密码值。
- 在控制台中,单击 菜单 图标
> 资源列表。
- 从服务列表中,选择 Secrets Manager的实例。
- 在 Secrets Manager UI 中,转至 密钥 列表。
- 在要旋转的私钥所在的行中,单击 操作 菜单
> 旋转。
- 可选: 将元数据添加到私钥或私钥的特定版本。
- 上载文件或输入 JSON 格式的元数据和版本元数据。
- 要立即轮换私钥,请单击 旋转。
- 可选: 检查版本历史记录以查看最新更新。
创建导入的证书的新版本
在更新最初导入到服务的证书时,可以使用 Secrets Manager UI 手动重新导入该证书。 轮换证书后,将保留先前版本,以防您需要该证书。
如果您要轮换的证书先前是使用中间证书和专用密钥导入的,请在轮换时包含中间证书和专用密钥,以避免服务中断。
使用托管的CSR创建新版本的导入证书
您可以使用 Secrets Manager 用户界面创建证书的第一个版本,或者在证书到期时创建下一个版本。
- 在控制台中,单击 菜单 图标
> 资源列表。
- 从服务列表中,选择 Secrets Manager的实例。
- 在 Secrets Manager UI 中,转至 密钥 列表。
- 在要旋转的证书所在的行中,单击 操作 菜单
> 旋转。
- 选择使用当前CSR签署的证书文件,或输入其数据。
- 可选:选择签名中间CA文件或输入其数据。
- 要立即轮换证书,请单击 旋转。
- 可选: 检查版本历史记录以查看最新更新。
- 将最新证书版本重新部署到 TLS 终止点。
要访问当前版本,您可以下载证书,也可以使用 获取秘密 API 以编程方式获取证书。
创建新版本的专用证书
如果针对 专用证书 启用了 Secrets Manager 服务实例,那么您可以手动更新先前由为服务实例配置的认证中心发出的证书。
创建新版本的公用证书
如果针对 公用证书 启用了 Secrets Manager 服务实例,那么可以手动更新先前从第三方认证中心订购的证书。
-
在控制台中,单击 菜单 图标
> 资源列表。
-
从服务列表中,选择 Secrets Manager的实例。
-
在 Secrets Manager UI 中,转至 密钥 列表。
-
在要旋转的证书所在的行中,单击 操作 菜单
> 旋转。
-
可选: 将元数据添加到私钥或私钥的特定版本。
- 上载文件或输入 JSON 格式的元数据和版本元数据。
-
单击 旋转。
将显示一条成功消息,指示正在处理您的订单。 如果验证成功完成,那么将发放新证书,并且证书状态将从 活动,旋转暂挂 更改回 活动。 如果验证未成功完成,那么证书状态将更改为 活动,旋转失败。
-
可选: 检查证书的发放详细信息。
您可以通过单击 操作 图标
> 详细信息来检查公用证书的发放详细信息。 如果请求存在问题,那么“状态”字段将提供有关轮换未成功完成的原因的信息。
-
将最新证书版本重新部署到 TLS 终止点。
在 UI 中使用您自己的 DNS 提供程序创建新版本的公用证书
要轮换在 UI 中使用手动 DNS 提供程序创建的公用证书,请完成以下步骤。
-
在控制台中,单击 菜单 图标
> 资源列表。
-
从服务列表中,选择 Secrets Manager的实例。
-
在要旋转的证书所在的行中,单击 操作 菜单
> 旋转。
-
可选: 添加名称和描述以轻松识别证书。
-
可选: 单击 更新。
-
单击 挑战 以访问与每个域关联的 TXT 记录名称和值。 您需要他们来完成挑战。
-
要验证域的所有权,请将为每个域提供的 TXT 记录手动添加到 DNS 提供者帐户。 您必须在到期日期之前仅解决未验证的问题。
如果为子域 (例如,
sub1.sub2.domain.com
) 订购证书,那么需要将 TXT 记录添加到已注册的域domain.com
。 -
验证您添加到域的 TXT 记录是否已传播。 根据您的 DNS 提供程序,可能需要一些时间才能完成。
-
确认已传播记录后,单击 验证 以请求 Let 's Encrypt 验证对域的提问并创建公用证书。
如果订单失败 (例如,如果未成功传播 TXT 记录),那么必须启动新订单才能继续。
-
发出证书后,请从 DNS 提供者帐户中的域中清除 TXT 记录并将其除去。
从 CLI 手动创建新版本的私钥
您可以使用 Secrets Manager CLI 插件来手动轮换私钥和证书。
旋转任意私钥
要使用 Secrets Manager CLI 插件来轮换任意私钥,请运行 ibmcloud secrets-manager secret-version-create
命令。 例如,以下命令会轮换私钥,并将 new-secret-data
指定为其新版本。
ibmcloud secrets-manager secret-version-create \
--secret-id=SECRET_ID \
--secret-version-prototype='{"payload": "updated secret credentials", "custom_metadata": {"anyKey": "anyValue"}, "version_custom_metadata": {"anyKey": "anyValue"}}'
此命令将输出私钥的值以及其他元数据。 有关命令选项的更多信息,请参阅 ibmcloud secrets-manager secret-version-create
。
轮换服务证书机密
要使用 Secrets Manager CLI 插件旋转服务凭据机密,请运行 ibmcloud secrets-manager secret-version-create
命令。 例如,以下命令会轮换私钥,并将 new-secret-data
指定为其新版本。
ibmcloud secrets-manager secret-version-create --secret-id SECRET_ID
此命令将输出私钥的值以及其他元数据。 有关命令选项的更多信息,请参阅 ibmcloud secrets-manager secret-version-create
。
轮流定制的信用额度秘密
要使用 Secrets Manager CLI 插件旋转自定义凭据机密,请运行 ibmcloud secrets-manager secret-version-create
命令。 例如,以下命令会轮换私钥,并将 new-secret-data
指定为其新版本。
ibmcloud secrets-manager secret-version-create --secret-id SECRET_ID
此命令将输出私钥的值以及其他元数据。 有关命令选项的更多信息,请参阅 ibmcloud secrets-manager secret-version-create
。
轮换用户凭证
要使用 Secrets Manager CLI 插件来轮换用户凭证私钥,请运行 ibmcloud secrets-manager secret-version-create
命令。 例如,以下命令会轮换私钥,并将 new-password
指定为其新版本。
ibmcloud secrets-manager secret-version-create \
--secret-id SECRET_ID \
--secret-version-prototype='{"password": "new-password", "custom_metadata": {"anyKey": "anyValue"}, "version_custom_metadata": {"anyKey": "anyValue"}}'
要使服务生成随机密码并将其分配给凭证,请省略 password
字段。 例如,{}
. Secrets Manager 将现有值替换为包含大写字母,小写字母,数字和符号的随机生成的 32 个字符的密码。
此命令将输出私钥的值以及其他元数据。 有关命令选项的更多信息,请参阅 ibmcloud secrets-manager secret-version-create
。
轮换 IAM 凭证
要使用 Secrets Manager CLI 插件来轮换 IAM 凭证密钥,请运行 ibmcloud secrets-manager secret-version-create
命令。 例如,以下命令将创建新的 API 密钥
ibmcloud secrets-manager secret-version-create \
--secret-id SECRET_ID
只有当 “重复使用IAM凭证” 设置为“开”时,才能手动旋转IAM凭证。
此命令将输出私钥的值以及其他元数据。 有关命令选项的更多信息,请参阅 ibmcloud secrets-manager secret-version-create
。
循环导入的证书
要使用 Secrets Manager CLI插件旋转证书,请运行 ibmcloud secrets-manager secret-version-create
命令。 例如,以下命令会轮换私钥,并将 new-secret-data
指定为其新版本。
certificate=$(cat cert.pem)
intermediate=$(cat intermediate.pem)
private_key=$(cat private_key.pem)
ibmcloud secrets-manager secret-version-create --secret-id SECRET_ID --imported-cert-certificate ${certificate} --imported-cert-intermediate ${intermediate} --imported-cert-private-key ${private_key}
此命令将输出私钥的值以及其他元数据。 有关命令选项的更多信息,请参阅 ibmcloud secrets-manager secret-version-create
。
通过企业社会责任管理,循环利用进口证书
要使用 Secrets Manager CLI插件重新导入证书,请运行 ibmcloud secrets-manager secret-version-create
命令。 例如,以下命令会轮换私钥,并将 new-secret-data
指定为其新版本。
当导入证书密钥用于管理 CSR 时,不允许使用 private_key
字段。
certificate=$(cat cert.pem)
intermediate=$(cat intermediate.pem)
ibmcloud secrets-manager secret-version-create --secret-id SECRET_ID --imported-cert-certificate ${certificate} --imported-cert-intermediate ${intermediate}
此命令将输出私钥的值以及其他元数据。 有关命令选项的更多信息,请参阅 ibmcloud secrets-manager secret-version-create
。
旋转 私人证书
要使用 Secrets Manager CLI插件创建新的私有证书密钥,请运行 ibmcloud secrets-manager secret-version-create
命令。
ibmcloud secrets-manager secret-version-create \
--secret-id SECRET_ID
--secret-version-prototype '{"csr":"..."}' # Keep empty JSON if not needed
此命令将输出私钥的值以及其他元数据。 有关命令选项的更多信息,请参阅 ibmcloud secrets-manager secret-version-create
。
轮换公用证书
要使用 Secrets Manager CLI 插件订购新的公用证书私钥,请运行 ibmcloud secrets-manager secret-version-create
命令。
ibmcloud secrets-manager secret-version-create \
--secret-id SECRET_ID \
--public-cert-rotation '{"rotate_keys": true|false}'
在轮换证书时,选择是否还轮换其专用密钥以针对 rotate_keys
字段分配 true
或 false
。
此命令将输出私钥的值以及其他元数据。 有关命令选项的更多信息,请参阅 ibmcloud secrets-manager secret-version-create
。
旋转 KV 私钥
要使用 Secrets Manager CLI 插件来轮换 KV 私钥,请运行 ibmcloud secrets-manager secret-version-create
命令。 例如,以下命令会轮换私钥,并将 new-secret-data
指定为其新版本。
ibmcloud secrets-manager secret-version-create \
--secret-id=SECRET_ID \
--secret-version-prototype='{"data": {"key":"value"}, "custom_metadata": {"anyKey": "anyValue"}, "version_custom_metadata": {"anyKey": "anyValue"}}'
此命令将输出私钥的值以及其他元数据。 有关命令选项的更多信息,请参阅 ibmcloud secrets-manager secret-version-create
。
使用 API 手动旋转私钥
您可以使用 Secrets Manager API 手动轮换私钥和证书。
旋转任意私钥
您可以通过调用 Secrets Manager API 来轮换任意私钥。
以下示例请求将创建新版本的私钥。 调用 API 时,请将标识变量和 IAM 令牌替换为特定于 Secrets Manager 实例的值。
您可以使用 custom_metadata
和 version_custom_metadata
请求参数来存储与组织需求相关的元数据。 仅针对私钥版本返回 version_custom_metadata
的值。 私钥的定制元数据存储为最多 50 个版本的所有其他元数据,并且不得包含机密数据。
curl -X POST \
-H "Authorization: Bearer {iam_token}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"custom_metadata": {
"metadata_custom_key": "metadata_custom_value"
},
"payload": "Updated arbitrary data",
"version_custom_metadata": {
"custom_version_key": "custom_version_value"
}
}' \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/secrets/{id}/versions"
成功响应会返回秘密的 ID 值和其他元数据。 有关必需和可选请求参数的更多信息,请查看 API 文档。
旋转键值私钥
您可以通过调用 Secrets Manager API 来轮换密钥值私钥。
以下示例请求将创建新版本的私钥。 调用 API 时,请将标识变量和 IAM 令牌替换为特定于 Secrets Manager 实例的值。
您可以使用 custom_metadata
和 version_custom_metadata
请求参数来存储与组织需求相关的元数据。 仅针对私钥版本返回 version_custom_metadata
的值。 私钥的定制元数据存储为最多 50 个版本的所有其他元数据,并且不得包含机密数据。
curl -X POST \
-H "Authorization: Bearer ${iam_token}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"custom_metadata": {
"metadata_custom_key": "metadata_custom_value"
},
"data": {
"key1": "val2"
},
"version_custom_metadata": {
"custom_version_key": "custom_version_value"
}
}' \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/secrets/{id}/versions"
成功响应会返回秘密的 ID 值和其他元数据。 有关必需和可选请求参数的更多信息,请查看 API 文档。
轮换用户凭证
您可以通过调用 Secrets Manager API 来轮换私钥。
以下示例请求将创建新版本的私钥。 调用 API 时,请将标识变量和 IAM 令牌替换为特定于 Secrets Manager 实例的值。
您可以使用 custom_metadata
和 version_custom_metadata
请求参数来存储与组织需求相关的元数据。 仅针对私钥版本返回 version_custom_metadata
的值。 私钥的定制元数据存储为最多 50 个版本的所有其他元数据,并且不得包含机密数据。
curl -X POST \
-H "Authorization: Bearer {iam_token}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"custom_metadata": {
"metadata_custom_key": "metadata_custom_value"
},
"password": "new-password",
"version_custom_metadata": {
"custom_version_key": "custom_version_value"
}
}' \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/secrets/{id}/versions"
要使服务生成随机密码并将其分配给凭证,请省略 password
字段。 例如,{}
. Secrets Manager 将现有值替换为包含大写字母,小写字母,数字和符号的随机生成的 32 个字符的密码。
成功响应会返回秘密的 ID 值和其他元数据。 有关必需和可选请求参数的更多信息,请查看 API 文档。
轮换 IAM 凭证
您可以通过调用 Secrets Manager API 来轮换私钥。
以下示例请求将创建新版本的私钥。 调用 API 时,请将标识变量和 IAM 令牌替换为特定于 Secrets Manager 实例的值。
您可以使用 custom_metadata
和 version_custom_metadata
请求参数来存储与组织需求相关的元数据。 仅针对私钥版本返回 version_custom_metadata
的值。 私钥的定制元数据存储为最多 50 个版本的所有其他元数据,并且不得包含机密数据。
curl -X POST \
-H "Authorization: Bearer {iam_token}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"custom_metadata": {
"metadata_custom_key": "metadata_custom_value"
},
"version_custom_metadata": {
"custom_version_key": "custom_version_value"
}
}' \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/secrets/{id}/versions"
成功响应会返回秘密的 ID 值和其他元数据。 有关必需和可选请求参数的更多信息,请查看 API 文档。
轮换服务凭证
您可以通过调用 Secrets Manager API 来轮换私钥。
以下示例请求将创建新版本的私钥。 调用 API 时,请将标识变量和 IAM 令牌替换为特定于 Secrets Manager 实例的值。
您可以使用 custom_metadata
和 version_custom_metadata
请求参数来存储与组织需求相关的元数据。 仅针对私钥版本返回 version_custom_metadata
的值。 私钥的定制元数据存储为最多 50 个版本的所有其他元数据,并且不得包含机密数据。
curl -X POST \
-H "Authorization: Bearer {iam_token}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"custom_metadata": {
"metadata_custom_key": "metadata_custom_value"
},
"version_custom_metadata": {
"custom_version_key": "custom_version_value"
}
}' \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/secrets/{id}/versions"
成功响应会返回秘密的 ID 值和其他元数据。 有关必需和可选请求参数的更多信息,请查看 API 文档。
旋转自定义凭证
您可以通过调用 Secrets Manager API 来轮换私钥。
以下示例请求将创建新版本的私钥。 调用 API 时,请将标识变量和 IAM 令牌替换为特定于 Secrets Manager 实例的值。
您可以使用 custom_metadata
和 version_custom_metadata
请求参数来存储与组织需求相关的元数据。 仅针对私钥版本返回 version_custom_metadata
的值。 私钥的定制元数据存储为最多 50 个版本的所有其他元数据,并且不得包含机密数据。
curl -X POST \
-H "Authorization: Bearer {iam_token}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"custom_metadata": {
"metadata_custom_key": "metadata_custom_value"
},
"version_custom_metadata": {
"custom_version_key": "custom_version_value"
}
}' \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/secrets/{id}/versions"
成功响应会返回秘密的 ID 值和其他元数据。 有关必需和可选请求参数的更多信息,请查看 API 文档。
循环导入的证书
您可以通过调用 Secrets Manager API 来轮换私钥。
以下示例请求将创建新版本的私钥。 调用 API 时,请将标识变量和 IAM 令牌替换为特定于 Secrets Manager 实例的值。
您可以使用 custom_metadata
和 version_custom_metadata
请求参数来存储与组织需求相关的元数据。 仅针对私钥版本返回 version_custom_metadata
的值。 私钥的定制元数据存储为最多 50 个版本的所有其他元数据,并且不得包含机密数据。
curl -X POST \
-H "Authorization: Bearer {iam_token}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"certificate": "-----BEGIN CERTIFICATE-----\nMIIE3jCCBGSgAwIBAgIUZfTbf3adn87l5J2Q2Aw+6Vk/qhowCgYIKoZIzj0EAwIwx\n-----END CERTIFICATE-----", "custom_metadata": {
"metadata_custom_key": "metadata_custom_value"
},
"intermediate": "-----BEGIN CERTIFICATE-----\nMIIE3DCCBGKgAwIBAgIUKncnp6BdSUKAFGBcP4YVp/gTb7gwCgYIKoZIzj0EAwIw\n-----END CERTIFICATE-----",
"private_key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEAqcRbzV1wp0nVrPtEpMtnWMO6Js1q3rhREZluKZfu0Q8SY4H3\n-----END RSA PRIVATE KEY-----", "version_custom_metadata": {
"custom_version_key": "custom_version_value"
}
}' \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/secrets/{id}/versions"
将证书,中间和专用密钥数据中的新行替换为 \n
。
成功响应会返回秘密的 ID 值和其他元数据。 有关必需和可选请求参数的更多信息,请查看 API 文档。
通过企业社会责任管理,循环利用进口证书
您可以通过调用 Secrets Manager API来旋转秘密。
以下示例请求将创建新版本的私钥。 调用 API 时,请将标识变量和 IAM 令牌替换为特定于 Secrets Manager 实例的值。
当导入证书密钥用于管理 CSR 时,不允许使用 private_key
字段。
curl -X POST \
-H "Authorization: Bearer {iam_token}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"certificate": "-----BEGIN CERTIFICATE-----\nMIIE3jCCBGSgAwIBAgIUZfTbf3adn87l5J2Q2Aw+6Vk/qhowCgYIKoZIzj0EAwIwx\n-----END CERTIFICATE-----",
"intermediate": "-----BEGIN CERTIFICATE-----\nMIIE3DCCBGKgAwIBAgIUKncnp6BdSUKAFGBcP4YVp/gTb7gwCgYIKoZIzj0EAwIw\n-----END CERTIFICATE-----"
}
}' \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/secrets/{id}/versions"
成功响应会返回秘密的 ID 值和其他元数据。 有关必需和可选请求参数的更多信息,请查看 API 文档。
可旋转的公开证书
您可以通过调用 Secrets Manager API 来轮换私钥。
以下示例请求将创建新版本的私钥。 调用 API 时,请将标识变量和 IAM 令牌替换为特定于 Secrets Manager 实例的值。
您可以使用 custom_metadata
和 version_custom_metadata
请求参数来存储与组织需求相关的元数据。 仅针对私钥版本返回 version_custom_metadata
的值。 私钥的定制元数据存储为最多 50 个版本的所有其他元数据,并且不得包含机密数据。
curl -X POST \
-H "Authorization: Bearer {iam_token}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"rotation": {
"rotate_keys": true # or false
},
"version_custom_metadata": {
"custom_version_key": "custom_version_value"
}
}' \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/secrets/{id}/versions"
将证书,中间和专用密钥数据中的新行替换为 \n
。
成功响应会返回秘密的 ID 值和其他元数据。 有关必需和可选请求参数的更多信息,请查看 API 文档。
私人证书轮换
您可以通过调用 Secrets Manager API 来轮换私钥。
以下示例请求将创建新版本的私钥。 调用 API 时,请将标识变量和 IAM 令牌替换为特定于 Secrets Manager 实例的值。
您可以使用 custom_metadata
和 version_custom_metadata
请求参数来存储与组织需求相关的元数据。 仅针对私钥版本返回 version_custom_metadata
的值。 私钥的定制元数据存储为最多 50 个版本的所有其他元数据,并且不得包含机密数据。
curl -X POST \
-H "Authorization: Bearer {iam_token}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"csr": '{}' # Keep empty if not required
"version_custom_metadata": {
"custom_version_key": "custom_version_value"
}
}' \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/secrets/{id}/versions"
将证书,中间和专用密钥数据中的新行替换为 \n
。
成功响应会返回秘密的 ID 值和其他元数据。 有关必需和可选请求参数的更多信息,请查看 API 文档。
使用 Terraform 手动旋转私钥
您可以使用 Terraform for Secrets Manager手动轮换任意私钥,密钥值私钥或导入的证书。 要手动轮换其他类型的私钥,必须使用 UI,API 或 CLI。
旋转任意私钥
您可以使用 Terraform for Secrets Manager来轮换任意私钥。
要轮换任意私钥,请修改 ibm_sm_arbitrary_secret
资源配置中 payload
属性的值,然后运行 terraform apply
以应用更改。 如果要将输入变量用于有效内容,请在 variables.tf
文件中修改其值。
您还可以同时修改任意私钥的其他属性,包括元数据属性,例如 description
,custom_metadata
或 version_custom_metadata
。
旋转键值私钥
要使用 Terraform for Secrets Manager来轮换密钥值私钥,请修改 ibm_sm_kv_secret
资源配置中 data
属性的值,然后运行 terraform apply
以应用更改。 如果要将输入变量用于有效内容,请在 variables.tf
文件中修改其值。
您还可以同时修改密钥值私钥的其他属性,包括元数据属性,例如 description
,custom_metadata
或 version_custom_metadata
。
循环导入的证书
您可以使用 Terraform for Secrets Manager来轮换导入的证书。
要轮换导入的证书,请修改 ibm_sm_imported_certificate
资源配置中 certificate
,intermediate
(可选) 和 private_key
(可选) 属性的值,然后运行 terraform apply
以应用更改。
您还可以同时修改导入的证书的其他属性,包括元数据属性,例如 description
,custom_metadata
或 version_custom_metadata
。