

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

# 数据加密
<a name="security-encryption"></a>

加密是 CodeBuild 安全的重要组成部分。某些加密（例如，针对传输中的数据的加密）是默认提供的，无需您执行任何操作。其他加密（例如，针对静态数据的加密）可在创建项目或构建时进行配置。
+ **静态数据加密**-默认使用 AWS 托管式密钥加密生成工件，例如缓存、日志、导出的原始测试报告数据文件和生成结果。如果您不想使用这些 KMS 密钥，则必须创建并配置一个客户托管密钥。有关更多信息，请参阅《AWS Key Management Service 用户指南》**中的[创建 KMS 密钥](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html)和 [AWS Key Management Service 概念](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html)。
  + 您可以将 CodeBuild 用于加密生成输出项目的 AWS KMS 密钥的标识符存储在`CODEBUILD_KMS_KEY_ID`环境变量中。有关更多信息，请参阅 [构建环境中的环境变量](build-env-ref-env-vars.md)。
  + 可以在创建构建项目时指定客户托管密钥。有关更多信息，请参阅 [Set the Encryption Key Using the Console](create-project.md#encryptionkey-console) 和[使用 CLI 设置加密密钥](create-project.md#cli.encryptionkey)。

  默认情况下，您的构建队列的 Amazon Elastic Block Store 卷是使用加密的 AWS 托管式密钥。
+ **传输中的数据加密**-使用签名版本 4 签名流程签名的 TLS 连接保护客户之间 CodeBuild CodeBuild 以及客户之间及其下游依赖关系之间的所有通信。所有 CodeBuild 端点都使用由管理的 SHA-256 证书 AWS 私有证书颁发机构。有关更多信息，请参阅[签名版本 4 签名流程](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html)和[什么是 ACM PCA](https://docs.aws.amazon.com/privateca/latest/userguide/)。
+ **构建构件加密**-与构建项目关联的 CodeBuild 服务角色需要访问 KMS 密钥才能加密其构建输出工件。默认情况下，在您的 AWS 账户中 CodeBuild 使用 AWS 托管式密钥 适用于 Amazon S3 的。如果您不想使用此 AWS 托管式密钥，则必须创建并配置一个客户托管密钥。有关更多信息，请参阅[加密构建输出](setting-up-kms.md)和《AWS KMS 开发人员指南》**中的[创建密钥](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html)。