

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 客户操作
<a name="cryptographic-details-customerops"></a>

 AWS 根据PCI标准，支付密码学对HSM的物理合规性负全部责任。该服务还提供安全的密钥存储，并确保密钥只能用于 PCI 标准允许且由您在创建或导入期间指定的用途。您负责配置密钥属性和访问权限，以利用服务的安全性和合规性功能。

**Topics**
+ [生成密钥](#w2aac39c25b7)
+ [导入密钥](#w2aac39c25b9)
+ [导出密钥](#w2aac39c25c11)
+ [删除 密钥](#w2aac39c25c13)
+ [轮换 密钥](#w2aac39c25c15)

## 生成密钥
<a name="w2aac39c25b7"></a>

创建密钥时，您可以设置服务用于强制执行密钥的合规使用的属性：
+ 算法和密钥长度 
+ 用法 
+ 可用性和过期 

用于基于属性的访问权限控制（ABAC）的标签用于限制与特定合作伙伴或应用程序一起使用的密钥，也应在创建过程中设置。请务必包括限制允许删除或更改标签的角色的政策。

您应确保在创建密钥之前设置了确定可以使用和管理密钥的角色的策略。

**注意**  
 CreateKey 命令上的 IAM 策略可用于强制执行和演示对密钥生成的双重控制。

## 导入密钥
<a name="w2aac39c25b9"></a>

导入密钥时，服务使用密钥块中的加密绑定信息来设置强制使用密钥的属性。设置基本密钥上下文的机制是使用通过源 HSM 创建、并受共享或非对称 [KEK](terminology.md#terms.kek) 保护的密钥块。这符合 PCI PIN 要求，并保留了源应用程序的用法、算法和密钥强度。

除了密钥块中的信息外，还必须在导入时建立重要的密钥属性、标签和访问控制策略。

 使用密码导入密钥不会传输源应用程序中的密钥属性。您必须使用此机制相应地设置属性。

 通常，密钥是使用明文组件进行交换的，由密钥保管人传输，然后加载仪式，在安全房间中实现双重控制。 AWS 支付密码学不直接支持这一点。API 将导出带有证书的公钥，该证书可由您自己的 HSM 导入，以导出可由服务导入的密钥块。允许使用您自己的 HSM 来加载明文组件。

您应该使用密钥检查值 (KCV) 来验证导入的密钥是否与源密钥匹配。

 ImportKey API 上的 IAM 策略可用于强制执行和演示对密钥导入的双重控制。

## 导出密钥
<a name="w2aac39c25c11"></a>

与合作伙伴或本地应用程序共享密钥可能需要导出密钥。使用密钥块进行导出可以使用加密的密钥材料维护基本密钥上下文。

密钥标签可用于限制向共享相同标签和值的 KEK 导出密钥。

 AWS 支付密码学不提供或显示明文密钥组件。这需要密钥保管人直接访问 PCI PTS HSM 或经过 ISO 13491 测试的安全加密设备 (SCD) 以进行显示或打印。您可以使用 SCD 建立非对称 KEK 或对称 KEK，以便在双重控制下进行明文密钥组件创建仪式。

应使用密钥检查值 (KCV) 来验证目标 HSM 导入的密钥是否与源密钥匹配。

## 删除 密钥
<a name="w2aac39c25c13"></a>

您可以使用删除密钥 API 安排在您配置的一段时间后删除密钥。在此之前，密钥是可以恢复的。一旦密钥被删除，就会从服务中永久移除。

 DeleteKey API 上的 IAM 策略可用于强制执行和演示对密钥删除的双重控制。

## 轮换 密钥
<a name="w2aac39c25c15"></a>

 可以使用密钥别名实现密钥轮换的效果，方法是创建或导入新密钥，然后修改密钥别名以引用新密钥。根据您的管理惯例，旧密钥将被删除或禁用。