将 API 密钥与 Secrets Manager 配合使用,以授权项目部署体系结构
配置可部署体系结构时,需要选择认证方法。 您可以使用存储为私钥的 API 密钥来授权项目在帐户中进行部署。
私钥是敏感信息的一部分,例如 API 密钥,密码或可用于访问保密系统的任何类型的凭证。 您可以在 IBM Cloud® Secrets Manager 中使用私钥,作为动态管理 API 密钥并将其安全存储在您自己的专用实例中的方法。
虽然可以将 API 密钥直接添加到配置中,但建议不要这样做,因为 API 密钥会显示在 project.json
文件中,并且对导出 API 密钥的任何人都可见。
准备工作
-
确保为您分配了在帐户中创建项目工具资源所需的许可权以及创建项目的许可权:
- IBM Cloud 项目服务上的“编辑者”角色。
- IBM Cloud® Schematics 服务的“编辑者”和“管理者”角色。
- 对项目的资源组的“查看者”角色。
有关访问权和许可权的更多信息,请参阅 授予用户对项目的访问权。
-
您创建的每个 API 密钥都具有分配为用户的相同访问权。 在创建 API 密钥之前,请确保您有权在要部署到的帐户 (也称为目标帐户) 中部署体系结构。 如果您具有以下 广泛访问权,那么可以在帐户中部署体系结构:
- 管理员角色,用于所有启用身份和访问权限的服务。
- 所有账户管理服务的管理员角色。
或者,您可以 创建与服务标识关联的 API 密钥。 服务标识 API 密钥继承分配给特定服务标识的所有访问权。 因此,您可以将服务标识的访问权限定为您正在配置的可部署体系结构所需的最小访问权。 此方法类似于使用具有基于可部署体系结构的特定访问权的可信概要文件。 有关查找任何给定可部署体系结构的必需访问角色的更多信息,请参阅 根据可部署体系结构授予特定访问权。
-
完成 创建项目并添加可部署体系结构 所需的步骤。 在配置可部署体系结构时,您授权项目使用 API 密钥或现有密钥进行部署。
创建 API 密钥
请完成以下步骤,创建一个API密钥:
-
在 IBM Cloud 控制台中,登录要部署到的帐户。
-
转至 管理 > 访问权 (IAM) > API 密钥。
-
单击创建 IBM Cloud API 密钥。
-
为 API 密钥输入名称和描述。
-
单击创建。
-
然后,单击显示,以显示 API 密钥。 或者,单击复制以复制并保存该密钥供日后使用,或单击下载。
出于安全原因,API 密钥仅在创建时才可复制或下载。 如果 API 密钥丢失,必须创建新的 API 密钥。
向 Secrets Manager 添加 API 密钥
创建 API 密钥后,请完成以下步骤以将其添加到包含项目的帐户中的 Secrets Manager:
- 在 IBM Cloud 帐户中创建 Secrets Manager 服务实例。 要创建一个秘密,您必须Secrets Manager拥有写作者或更高权限。
- 创建私钥实例后,请确保选择 其他私钥类型 以添加任意私钥。 有关创建任意私钥的信息,请参阅 在 UI 中创建任意私钥。 您的任意私钥必须包含 API 密钥。 必须在要部署到的目标帐户中创建 API 密钥。
使用私钥引用
创建私钥后,可以使用该私钥作为对项目进行部署授权的参考。 有关引用的更多信息,请参阅 引用值。 要使用私钥引用配置可部署体系结构,请完成以下步骤:
- 在 IBM Cloud 控制台中,登录到要将项目部署到的帐户。
- 转至 菜单
> 项目。
- 选择包含要授权的可部署体系结构配置的项目。
- 从 配置 选项卡中,选择配置。
- 点击编辑
- 在“配置”部分中,将鼠标悬停在 API 密钥字段上,然后选择 密钥图标。
- 选择服务实例并选择要使用的私钥,然后单击 确定。
您还可以使用可信概要文件作为参考。 在“配置”部分中,对于该方法,选择 可信概要文件 并输入可信概要文件标识。 有关更多信息,请参阅 使用可信概要文件。