组织私钥

当您使用 IBM Cloud® Secrets Manager 时,您可以创建组来组织您的机密,并控制团队中谁可以访问这些机密。 如果不再需要这些组,可以将其删除。

资源组环境以及所包含资源实例遵循的约束。 用户可以与资源组相关联以启用协作。帮助确保在平台级正确执行策略的方式类似,您也可以在实例级创建秘密组来组织秘密。

此图显示了私钥组的两个示例以及它们如何映射到访问组。 一个分配了读者角色的角色和一个分配了管理者角色的角色。 相关内容已在周围的文字中作了充分说明。
为秘密群组分配访问权限

如上图中所示,对私钥组具有 读者 访问权的用户可以看到该组存在,并了解将哪些私钥分配给该组。 具有 写入者 访问权的用户可以查看和编辑私钥组和私钥本身。 根据设计,默认秘密组继承了为实例设置的相同权限。

您可以选择按开发阶段 (特定于团队中的人员具有的角色类型) 或以任何可能帮助您的方式对私钥进行分组。 每个私钥只能映射到一个组,并且映射在私钥创建时发生。

要了解有关使用私钥组的建议准则,请查看 组织私钥和分配访问权的最佳实践

准备工作

开始之前,请确保您具有所需的访问级别。 要创建和管理密钥组,您需要 管理者 服务角色

创建私钥组

您可以使用 Secrets Manager 控制台、CLI 或 API 创建秘密群组。

在 UI 中创建私钥组

您可以使用控制台来创建私钥组。 您还可以在添加或创建私钥的过程中创建私钥组。

  1. 在控制台中,单击 菜单 图标 "菜单" 图标 > 资源列表
  2. 从服务列表中,选择 Secrets Manager的实例。
  3. 在导航中,单击 私钥组> 创建
  4. 添加名称和描述以轻松识别组。
  5. 单击创建
  6. 可选: 为私钥组分配 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 中删除私钥组

您可以使用控制台来删除私钥组。

  1. 在控制台中,单击 菜单 图标 "菜单" 图标 > 资源列表
  2. 从服务列表中,选择 Secrets Manager的实例。
  3. 在导航中,单击 密钥组
  4. 在要删除的私钥组的行中,单击 操作 图标 "操作" 图标
  5. 单击 删除组
  6. 单击删除

从 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}"

后续步骤

是否已使用私钥组? 要了解有关分配访问权和组织私钥的更多信息,请查看以下资源。