

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

# 导入 ACM 证书的先决条件
<a name="import-certificate-prerequisites"></a>

要将自签名 SSL/TLS 证书导入 ACM，必须同时提供证书及其私钥。若要导入由非AWS 证书颁发机构 (CA) 签发的证书，您还必须包括证书的私有密钥和公有密钥。您的证书必须满足本主题中描述的所有条件。

对于所有导入的证书，必须指定加密算法和密钥大小。ACM 支持以下算法（括号中为 API 名称）：
+ RSA 1024 位 (`RSA_1024`)
+ RSA 2048 位 (`RSA_2048`)
+ RSA 3072 位 (`RSA_3072`)
+ RSA 4096 位 (`RSA_4096`)
+ ECDSA 256 位 (`EC_prime256v1`)
+ ECDSA 384 位 (`EC_secp384r1`)
+ ECDSA 521 位 (`EC_secp521r1`)

另请注意以下额外要求：
+ ACM [集成服务](https://docs.aws.amazon.com/acm/latest/userguide/acm-services.html)仅允许将其支持的算法和密钥大小与其资源关联。例如， CloudFront 仅支持 1024 位 RSA、2048 位 RSA、3072 位 RSA、4096 位 RSA 和 Elliptic Prime Curve 256 位密钥，而 Application Load Balancer 支持 ACM 提供的所有算法。有关详细信息，请参阅您使用的服务的文档。
+ 证书必须是 SSL/TLS X.509 版本 3 证书。它必须包含公有密钥、网站的完全限定域名 (FQDN) 或 IP 地址以及有关发布者的信息。
+ 证书可以由您拥有的私有密钥自签名，也可以由颁发 CA 的私有密钥签名。您必须提供私有密钥，该私有密钥不得超过 5 KB（5,120 字节），并且必须未加密。
+ 如果证书由 CA 签名，并且您选择提供证书链，则该链必须采用 PEM 编码。
+ 证书在导入时必须是有效的。在证书的有效期开始之前或结束之后，无法导入证书。`NotBefore` 证书字段包含有效期的开始日期，`NotAfter` 字段包含有效期的结束日期。
+ 需要的所有证书材料（证书、私有密钥和证书链）均采用 PEM 编码。上传 DER 编码的材料会导致错误。有关更多信息以及示例，请参阅 [证书和密钥的导入格式](import-certificate-format.md)。
+ 续订（重新导入）证书时，如果先前导入的证书中没有扩展，则无法添加 `KeyUsage` 或 `ExtendedKeyUsage` 扩展。

  **例外：**与之前的证书 ExtendedKeyUsage 相比，您可以重新导入缺少客户端身份验证的证书。这可以适应行业的变化，即证书颁发机构不再为符合 Chrome 根程序要求而向 ClientAuth EKU 颁发证书。
**重要**  
如果您需要客户端身份验证功能，则必须自行实施其他验证，因为 ACM 不支持回滚到先前导入的证书。
+ AWS CloudFormation 不支持将证书导入 ACM。