设置证书吊销方法 - AWS Private Certificate Authority

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

设置证书吊销方法

在规划私有 PKI 时 AWS 私有 CA,应考虑如何处理不再希望端点信任已颁发的证书的情况,例如端点的私钥被泄露的情况。解决此问题的常见方法是使用短期证书或配置证书吊销。短期证书将在很短的时间(几小时或几天)内过期,因此吊销没有任何意义,证书失效的时间与通知端点吊销证书的时间相差无几。本节介绍 AWS 私有 CA 客户的吊销选项,包括配置和最佳实践。

寻找吊销方法的客户可以选择在线证书状态协议(OCSP)和/或证书吊销列表(CRL)。

注意

如果您在未配置吊销的情况下创建 CA,以后可以随时对其进行配置。有关更多信息,请参阅 更新私有 CA

  • 在线证书状态协议(OCSP)

    AWS 私有 CA 提供完全托管的 OCSP 解决方案,无需客户自己操作基础架构,即可通知端点证书已被吊销。客户可以使用 AWS 私有 CA 控制台、API、CLI 或通过 AWS CloudFormation单个操作在新的 CA 或现有 CA 上启用 OCSP。尽管 CRL 是在端点上存储和处理的,可能会过时,而 OCSP 存储和处理要求是在响应程序后端同步处理的。

    为证书颁发机构启用 OCSP 时,会在颁发的每个新证书的授权信息访问 (AIA) 扩展中 AWS 私有 CA 包含 OCSP 响应者的 URL。该扩展允许 Web 浏览器等客户端查询响应程序并确定是否可以信任终端实体或从属 CA 证书。响应程序返回经过加密签名的状态消息,以确保其真实性。

    AWS 私有 CA OCSP 响应器符合 RF C 5019。

    OCSP 注意事项

    • OCSP 状态消息的签名算法与颁发 CA 配置使用的签名算法相同。默认情况下,在 AWS 私有 CA 控制台中创建的 CA 使用 SHA256WITHRSA 签名算法。其他支持的算法可以在 CertificateAuthorityConfigurationAPI 文档中找到。

    • 如果启用了 OCSP 响应程序,则 APIPassthrough 和 CSRPassthrough 证书模板将无法与 AIA 扩展一起使用。

    • 托管 OCSP 服务的端点可在公共互联网上访问。想要使用 OCSP 但又不想拥有公共端点的客户需要运行自己的 OCSP 基础架构。

  • 证书吊销列表(CRL)

    CRL 包含已吊销证书的列表。将 CA 配置为生成 CRL 时,在颁发的每个新证书中都 AWS 私有 CA 包含 CRL 分发点扩展。此扩展提供 CRL 的 URL。该扩展允许 Web 浏览器等客户端查询 CRL 并确定是否可以信任终端实体或从属 CA 证书。

由于客户端必须下载 CRL 并在本地进行处理,因此其使用比 OCSP 更耗费内存。与检查每次新连接尝试的吊销状态的 OCSP 相比,CRL 消耗的网络带宽可能更少,因为 CRL 列表是已下载并缓存的。

注意

OCSP 和 CRL 在吊销和状态更改可用性之间都存在一些延迟。

  • 当您吊销证书时,OCSP 响应最多可能需要 60 分钟才能反映新状态。通常,OCSP 往往支持更快地分发吊销信息,因为与客户端可以缓存数天的 CRL 不同,客户端通常不会缓存 OCSP 响应。

  • 通常在吊销证书大约 30 分钟后更新 CRL。如果 CRL 更新因任何原因失败, AWS 私有 CA 则每 15 分钟再尝试一次。

吊销配置的一般要求

以下要求适用于所有吊销配置。

  • 禁用 CRL 或 OCSP 的配置必须仅包含 Enabled=False 参数,如果包含 CustomCnameExpirationInDays 等其他参数,则配置将失败。

  • 在 CRL 配置中,S3BucketName 参数必须符合 Amazon Simple Storage Service 桶命名规则

  • 包含要用于 CRL 或 OCSP 的自定义规范名称(CNAME)参数的配置必须符合关于在 CNAME 中使用特殊字符的 RFC7230 限制。

  • 在 CRL 或 OCSP 配置中,CNAME 参数的值不得包含协议前缀,例如“http://”或“https://”。