组织私钥
当您使用 IBM Cloud® Secrets Manager 时,您可以创建组来组织您的机密,并控制团队中谁可以访问这些机密。 如果不再需要这些组,可以将其删除。
与 资源组环境以及所包含资源实例遵循的约束。 用户可以与资源组相关联以启用协作。帮助确保在平台级正确执行策略的方式类似,您也可以在实例级创建秘密组来组织秘密。
如上图中所示,对私钥组具有 读者 访问权的用户可以看到该组存在,并了解将哪些私钥分配给该组。 具有 写入者 访问权的用户可以查看和编辑私钥组和私钥本身。 根据设计,默认秘密组继承了为实例设置的相同权限。
您可以选择按开发阶段 (特定于团队中的人员具有的角色类型) 或以任何可能帮助您的方式对私钥进行分组。 每个私钥只能映射到一个组,并且映射在私钥创建时发生。
要了解有关使用私钥组的建议准则,请查看 组织私钥和分配访问权的最佳实践。
准备工作
开始之前,请确保您具有所需的访问级别。 要创建和管理密钥组,您需要 管理者 服务角色。
创建私钥组
您可以使用 Secrets Manager 控制台、CLI 或 API 创建秘密群组。
在 UI 中创建私钥组
您可以使用控制台来创建私钥组。 您还可以在添加或创建私钥的过程中创建私钥组。
- 在控制台中,单击 菜单 图标
> 资源列表。
- 从服务列表中,选择 Secrets Manager的实例。
- 在导航中,单击 私钥组> 创建。
- 添加名称和描述以轻松识别组。
- 单击创建。
- 可选: 为私钥组分配 IAM 策略。
通过 CLI 创建秘密群组
您可以使用 Secrets Manager CLI 插件创建秘密群组。
要创建一个秘密组,请运行 ibmcloud secrets-manager secret-group-create 命令。
ibmcloud secrets-manager secret-group-create --name "my-secret-group" --description "Extended description for this group."
该命令将输出秘密组的 ID 值和其他元数据。 有关命令选项的更多信息,请参阅 ibmcloud secrets-manager secret-group-create.
使用 API 创建私钥组
您可以使用 Secrets Manager API 来创建私钥组。
以下示例请求将创建私钥组。 调用 API 时,请将 ID 变量和 IAM 令牌替换为 Secrets Manager 实例的特定值。
curl -X POST
--H "Authorization: Bearer {iam_token}" \
--H "Accept: application/json" \
--H "Content-Type: application/json" \
--d '{
"name":"my-secret-group",
"description":"Extended description for this group."
}' \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/secret_groups"
使用 Terraform 创建私钥组
您可以使用 Terraform for Secrets Manager来创建私钥组。
以下示例请求将创建私钥组。
resource "ibm_sm_secret_group" "sm_secret_group_test" {
instance_id = local.instance_id
region = local.region
name = "secret_group_test"
description = "example secret group"
}
使用 Terraform IBM Modules (TIM) for Secrets Manager Secret Group 创建和管理秘密组,有效组织秘密。 了解有关 Terraform IBM 模块的 更多信息。
删除密钥组
如果不再需要使用某个组,可以使用控制台、CLI 或 API 将其删除。
要删除私钥组,它必须为空。 如果需要除去包含私钥的私钥组,那么必须首先 删除属于该组的私钥。
在 UI 中删除私钥组
您可以使用控制台来删除私钥组。
- 在控制台中,单击 菜单 图标
> 资源列表。
- 从服务列表中,选择 Secrets Manager的实例。
- 在导航中,单击 密钥组。
- 在要删除的私钥组的行中,单击 操作 图标
。
- 单击 删除组。
- 单击删除。
从 CLI 中删除秘密组
您可以使用 Secrets Manager CLI 插件删除秘密组。
要删除一个秘密组,请运行 ibmcloud secrets-manager secret-group-delete 命令。 您可以使用 ID 或名称指定秘密组。
按 ID 删除:
ibmcloud secrets-manager secret-group-delete --id SECRET_GROUP_ID
有关命令选项的更多信息,请参阅 ibmcloud secrets-manager secret-group-delete.
使用 API 删除私钥组
您可以使用 Secrets Manager API 来删除私钥组。
以下示例请求将删除私钥组。 调用 API 时,请将 ID 变量和 IAM 令牌替换为 Secrets Manager 实例的特定值。
curl -X DELETE
--H "Authorization: Bearer {iam_token}" \
"https://{instance_ID}.{region}.secrets-manager.appdomain.cloud/api/v2/secret_groups/{id}"
后续步骤
是否已使用私钥组? 要了解有关分配访问权和组织私钥的更多信息,请查看以下资源。
- 分配对私钥组的访问权
- 组织密钥和分配访问权限的最佳实践
- 要使用 Terraform 自动管理 Secrets Manager 保密组,请参阅用于 Secrets Manager 保密组的 Terraform IBM 模块 (TIM)。