管理密钥创建和导入访问策略
在设置了IBM® Key Protect服务 实例后,您可以使用 IBM® Key Protect服务 API。
管理keyCreateImportAccess设置
的keyCreateImportAccess策略 Key Protect实例是一种访问策略。 是一种访问策略,可用于限制密钥的创建和导入方式。 Key Protect实例。
启用此策略后,Key Protect将自动启用 只允许创建或导入密钥 Key Protect实例,该实例遵循密钥 创建和导入设置的 {{{ite.data.keyCreateImportAccess实例。
设置和检索keyCreateImportAccess策略可通过 应用程序编程接口 (API)。 KeyCreateImportAccess策略支持 将被添加到用户界面 (UI)、命令行界面 (CLI) 和 软件开发工具包 (SDK)。 要了解有关访问 {{site.data.keyword.keymanagementserviceshort}}的API 的更多信息,请查看 设置 API。
启用keyCreateImportAccess策略前 Key Protect实例时,请牢记 以下注意事项:
-
KeyCreateImportAccess策略不会影响在创建策略之前已经存在的密钥。 KeyCreateImportAccess策略只影响 设置策略后发送的Key Protect请求。 策略设置后发送的请求。 您仍然可以访问存在于您的 Key Protect实例。 创建。
-
KeyCreateImportAccess策略可在各种密钥操作中影响密钥。 属性会在创建
enforce_token
旋转和恢复时影响导入的密钥、 旋转和还原时会受到影响。 的create_root_key
,import_root_key
、create_standard_key
, andimport_standard_key
attributes will only affect keys at creation time. All other Key Protect操作(打包、解包等) 不受影响,可以像往常一样在键上调用。
使用控制台为Key Protect实例启用和更新keyCreateImportAccess策略
如果您更喜欢使用 Key Protect的图形界面、 您可以使用IBM Cloud控制台。
如果启用了 "enforce_token",所有导入密钥操作都将无法在 用户界面。 强制令牌 "选项使 安全导入 选项使安全导入成为所有密钥导入的必要条件。 安全导入支持仅在 安全导入支持仅在Key Protect中提供。CLI 或 API 中提供。
创建Key Protect实例后、 完成以下步骤以启用keyCreateImportAccess策略:
-
转到菜单>资源清单查看资源列表。
-
从 IBM Cloud 资源列表中,选择您供应的 Key Protect 实例。
-
单击页面左侧的“实例策略”链接。
-
找到
Create and import access
面板(位于页面顶部)。 -
启用或禁用任何您想要的keyCreateImportAccess设置。 请注意 任何已禁用的创建或导入密钥操作都将无法通过 "添加密钥 "模式窗 添加密钥 "模式。
-
点击
Save
或Cancel
(任选其一)。
-
使用 API 为Key Protect实例启用和更新keyCreateImportAccess策略
As a security admin, you can enable or update a keyCreateImportAccess policy for a Key Protect instance by making a PUT
调用以下终端。
https://<region>.kms.cloud.ibm.com/api/v2/instance/policies?policy=keyCreateImportAccess
如果您正在更新您的Key Protect 在使用keyCreateImportAccess策略时,请注意,如果在请求中省略了某个属性 字段将被设置为默认值,被省略字段的现有值将被默认值覆盖。 被省略字段的现有值将被默认值覆盖。
-
To enable keyCreateImportAccess policies, you must be assigned a 经理 access policy for your Key Protect 实例 要了解 IAM 角色如何映射到 Key Protect服务操作,请查看 服务访问角色。
-
启用或更新keyCreateImportAccess策略 Key Protect实例。 以下
curl
命令。$ curl -X PUT \ "https://<region>.kms.cloud.ibm.com/api/v2/instance/policies?policy=keyCreateImportAccess" \ -H "accept: application/vnd.ibm.kms.policy+json" \ -H "authorization: Bearer <IAM_token>" \ -H "bluemix-instance: <instance_ID>" \ -H "content-type: application/vnd.ibm.kms.policy+json" \ -d '{ "metadata": { "collectionType": "application/vnd.ibm.kms.policy+json", "collectionTotal": 1 }, "resources": [ { "policy_type": "keyCreateImportAccess", "policy_data": { "enabled": true, "attributes": { "create_root_key": <true/false>, "create_standard_key": <true/false>, "import_root_key": <true/false>, "import_standard_key": <true/false>, "enforce_token": <true/false> } } } ] }'
根据下表替换示例请求中的变量。
变量 | 描述 |
---|---|
区域 | 需要。 地区缩写,如 us-south 或 eu-gb ,表示您的Key Protect实例所在的地理区域For more information, see 区域服务终端. |
IAM_token | 需要。 您的 IBM Cloud 访问令牌。 在curl请求中包含IAM令牌的全部内容,包括承载器值 For more information, see 读取访问令牌. |
instance_ID | 需要。 分配给Key Protect服务实例的唯一标识符 For more information, see 检索实例 ID. |
创建根密钥 | 需要。 设为 true 可允许在Key Protect实例中创建根密钥。 Set to false to prevent root keys from being created in your instance Note: If omitted, POST /instance/policies will set this attribute to the default value (true). |
创建标准密钥 | 需要。 设置为 true 可允许在Key Protect实例中创建标准密钥。 设置为 false 可防止在实例中创建标准密钥 Note: If omitted, POST /instance/policies will set this attribute to the default value (true). |
导入根密钥 | 需要。 设置为 "true "可允许将根键导入到Key Protect实例中。 设置为 false 可防止将根键导入实例 :如果省略,POST /instance/policies 将把此属性设置为默认值(true)。 |
导入标准密钥 | 需要。 设置为 "true "可允许将标准密钥导入到您的Key Protect实例中。 设置为 false 可防止将标准密钥导入实例 Note: If omitted, POST /instance/policies will set this attribute to the default value (true). |
强制令牌 | 需要。 设置为 true 可防止授权用户在不使用导入令牌的情况下将关键信息导入您的Key Protect实例。 设置为 false 允许授权用户在不使用导入令牌的情况下将关键材料导入实例If enabled, this attribute will take precedence over the import_root_key and import_standard_key attributes. Note: If omitted, POST /instance/policies will set this attribute to the default value (false). |
请求成功后会返回 HTTP 204 No Content
响应,这表明 表示您的Key Protect已完成。 实例现在已启用keyCreateImportAccess策略。 您的Key Protect实例现在将仅 创建或导入您请求中指定方法的密钥。 请求中指定的方法创建或导入密钥。
可选:验证密钥创建导入访问策略的启用
您可以通过发出列表策略请求来验证密钥创建导入访问策略是否已启用:
$ curl -X GET \
"https://<region>.kms.cloud.ibm.com/api/v2/instance/policies?policy=keyCreateImportAccess" \
-H "accept: application/vnd.ibm.kms.policy+json" \
-H "authorization: Bearer <IAM_token>" \
-H "bluemix-instance: <instance_ID>"
其中 <instance_ID>
是您的实例名称,您的 <IAM_token>
是您的 IAM 令牌。
禁用Key Protect实例的keyCreateImportAccess策略
作为Key Protect实例的管理程序、 禁用现有的keyCreateImportAccess策略。 Key Protect instance by making a PUT
call to the following endpoint.
https://<region>.kms.cloud.ibm.com/api/v2/instance/policies?policy=keyCreateImportAccess
在请求禁用您的 keyCreateImportAccess策略时,请不要提供任何属性。
-
To disable keyCreateImportAccess policies, you must be assigned a 经理 access policy for your Key Protect 实例 要了解 IAM 角色如何映射到 Key Protect服务操作,请查看 服务访问角色。
-
禁用现有的keyCreateImportAccess策略 Key Protect实例。 以下
curl
命令。$ curl -X PUT \ "https://<region>.kms.cloud.ibm.com/api/v2/instance/policies?policy=keyCreateImportAccess" \ -H "accept: application/vnd.ibm.kms.policy+json" \ -H "authorization: Bearer <IAM_token>" \ -H "bluemix-instance: <instance_ID>" \ -H "content-type: application/vnd.ibm.kms.policy+json" \ -d '{ "metadata": { "collectionType": "application/vnd.ibm.kms.policy+json", "collectionTotal": 1 }, "resources": [ { "policy_type": "keyCreateImportAccess", "policy_data": { "enabled": false } } ] }'
根据下表替换示例请求中的变量。
变量 | 描述 |
---|---|
区域 | 需要。 地区缩写,如 us-south 或 eu-gb ,表示您的Key Protect实例所在的地理区域For more information, see 区域服务终端. |
IAM_token | 需要。 您的 IBM Cloud 访问令牌。 在curl请求中包含IAM令牌的全部内容,包括承载器值 For more information, see 读取访问令牌. |
instance_ID | 需要。 分配给Key Protect服务实例的唯一标识符 For more information, see 检索实例 ID. |
请求成功后会返回一个 HTTP 204 No Content
响应,表明服务的 keyCreateImportAccess 策略已更新。 表示您的服务实例的keyCreateImportAccess策略已更新。 实例。
可选:验证密钥创建导入访问策略的启用
您可以通过发出列表策略请求来验证密钥创建导入访问策略是否已禁用:
$ curl -X GET \
"https://<region>.kms.cloud.ibm.com/api/v2/instance/policies?policy=keyCreateImportAccess" \
-H "accept: application/vnd.ibm.kms.policy+json" \
-H "authorization: Bearer <IAM_token>" \
-H "bluemix-instance: <instance_ID>"
其中 <instance_ID>
是您的实例名称,您的 <IAM_token>
是您的 IAM 令牌。