

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

# 使用 AWS Encryption SDK 用 AWS KMS
<a name="getting-started"></a>

要使用 AWS Encryption SDK，您需要使用包装[密钥配置密钥环](concepts.md#keyring)或[主密钥](concepts.md#master-key-provider)提供商。如果您没有密钥基础设施，我们建议使用 [AWS Key Management Service (AWS KMS)](https://aws.amazon.com/kms/)。中的许多代码示例都 AWS Encryption SDK 需要 [AWS KMS key](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#master_keys).

要与进行交互 AWS KMS， AWS Encryption SDK 需要使用您的首选编程语言的 AWS SDK。 AWS Encryption SDK 客户端库与 AWS SDK 配合使用以支持存储在中的 AWS KMS主密钥。

**为准备使用 AWS Encryption SDK 用 AWS KMS**

1. 创建一个 AWS 账户. 要了解如何操作，请参阅[如何创建和激活新的亚马逊网络服务账户？](https://aws.amazon.com/premiumsupport/knowledge-center/create-and-activate-aws-account/)在 AWS 知识中心。

1. 创建对称加密 AWS KMS key。有关帮助信息，请参阅《AWS Key Management Service 开发人员指南**》中的[创建密钥](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html)。
**提示**  
要以 AWS KMS key 编程方式使用，您需要的密钥 ID 或亚马逊资源名称 (ARN)。 AWS KMS key要获得有关查找 AWS KMS key ID 和 ARN 的帮助，请参阅《AWS Key Management Service 开发人员指南**》中的[查找密钥 ID 和 ARN](https://docs.aws.amazon.com/kms/latest/developerguide/viewing-keys.html#find-cmk-id-arn)。

1. 生成访问密钥 ID 和安全访问密钥。您可以使用 IAM 用户的访问密钥 ID 和私有访问密钥，也可以使用包含 AWS Security Token Service 访问密钥 ID、私有访问密钥和会话令牌的临时安全证书创建新的会话。作为安全最佳实践，我们建议您使用临时证书，而不是与 IAM 用户或 AWS （根）用户账户关联的长期证书。

   要创建具有访问密钥的 IAM 用户，请参阅《IAM 用户指南》**中的[创建 IAM 用户](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_create.html#id_users_create_console)。

   要生成临时安全凭证，请参阅《IAM 用户指南**》中的[请求临时安全凭证](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html)。

1. 使用[适用于 Java 的 AWS SDK](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/setup-credentials.html)[适用于 JavaScript 的 AWS SDK](https://docs.aws.amazon.com/sdk-for-javascript/latest/developer-guide/setting-credentials.html)、[AWS SDK for Python (Boto)](https://docs.aws.amazon.com/boto3/latest/#configuration)或 [适用于 C\+\+ 的 AWS SDK](https://docs.aws.amazon.com/sdk-for-cpp/latest/developer-guide/credentials.html)（对于 C）中的说明以及您在步骤 3 中生成的访问密钥 ID 和私有访问密钥来设置您的 AWS 证书。如果您生成了临时凭证，还需要指定会话令牌。

   此过程允许 AWS SDK AWS 为您签署请求。与交互 AWS Encryption SDK 的代码示例 AWS KMS 假定您已完成此步骤。

1. 下载并安装 AWS Encryption SDK. 要了解操作方法，请参阅要使用的[编程语言](programming-languages.md)的安装说明。