术语和概念 - Amazon Private Certificate Authority
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

术语和概念

以下术语和概念在您使用 Amazon Private Certificate Authority (Amazon 私有 CA) 的过程中会有所帮助。

信任

要让 Web 浏览器信任网站的身份,该浏览器必须能够验证网站的证书。不过,浏览器仅信任称为“CA 根证书”的少量证书。称为证书颁发机构 (CA) 的可信第三方将验证该网站的身份并向网站运营商颁发签名的数字证书。随后,浏览器可以检查数字签名以验证网站的身份。如果验证成功,浏览器会在地址栏中显示一个锁定图标。

TLS 服务器证书

HTTPS 事务需要服务器证书来对服务器进行身份验证。服务器证书是 X.509 v3 数据结构,用于将证书中的公有密钥绑定到证书的使用者。TLS 证书由证书颁发机构(CA)签名。该证书包含服务器的名称、有效期、公有密钥、签名算法等。

证书签名

数字签名是证书的已加密哈希。签名用于确认证书数据的完整性。您的私有 CA 通过对可变大小的证书内容使用加密哈希函数(如 SHA256)来创建签名。此哈希函数会生成一个实际上不可伪造的固定大小的数据字符串。此字符串称为哈希。然后,CA 使用其私有密钥对哈希值进行加密,并将已加密的哈希与证书相连接。

证书颁发机构

证书颁发机构 (CA) 颁发和 (如有必要) 吊销数字证书。最常见的证书类型基于 ISO X.509 标准。X.509 证书确认证书主题的身份并将该身份绑定到公有密钥。主题可以是用户、应用程序、计算机或其他设备。CA 可以对证书进行签名,方法是对内容进行哈希处理,然后使用与证书中的公有密钥相关的私有密钥对哈希进行加密。需要确认主题的身份的客户端应用程序 (如 Web 浏览器) 使用公有密钥来解密证书签名。然后,它对证书内容进行哈希处理,并将哈希值与已解密的签名进行比较来确定它们是否匹配。有关证书签名的信息,请参阅证书签名

您可以使用 Amazon 私有 CA 创建私有 CA,然后使用私有 CA 颁发证书。您的私有 CA 仅颁发在组织内使用的私有 SSL/TLS 证书。有关更多信息,请参阅 私有证书。您的私有 CA 还需要证书,然后才能使用它。有关更多信息,请参阅 CA 证书

根 CA

颁发证书时可依据的加密构建数据块和信任根。它由用于签署(颁发)证书的私有密钥和标识根 CA 并将私有密钥绑定到 CA 名称的根证书组成。根证书将分发到环境中每个实体的信任存储区。管理员将信任存储构造为仅包括他们信任的CA。管理员将信任存储区更新或构建到其环境中实体的操作系统、实例和主机映像中。资源尝试相互连接时,它们会检查每个实体提供的证书。客户端检查证书的有效性,以及是否存在从证书到信任存储中安装的根证书的链。如果满足这些条件,资源之间就会完成“握手”。该握手以加密方式证明每个实体彼此的身份,并在它们之间创建加密的通信通道 (TLS/SSL)。

CA 证书

证书颁发机构 (CA) 证书确认 CA 的身份并将它绑定到证书中包含的公有密钥。

您可以使用 Amazon 私有 CA 创建私有根 CA 或私有从属 CA,每个 CA 都有一个 CA 证书作支持。从属 CA 证书由信任链中较高的另一个 CA 证书签名。但是,对于根 CA,证书是自签名的。您还可以建立外部根颁发机构(例如,在本地托管)。然后,您可以使用根颁发机构对 Amazon 私有 CA 托管的从属根 CA 证书进行签名。

以下示例显示了 Amazon 私有 CA X.509 CA 证书中包含的典型字段。请注意,对于 CA 证书,CA: 字段中的 Basic Constraints 值设置为 TRUE

Certificate: Data: Version: 3 (0x2) Serial Number: 4121 (0x1019) Signature Algorithm: sha256WithRSAEncryption Issuer: C=US, ST=Washington, L=Seattle, O=Example Company Root CA, OU=Corp, CN=www.example.com/emailAddress=corp@www.example.com Validity Not Before: Feb 26 20:27:56 2018 GMT Not After : Feb 24 20:27:56 2028 GMT Subject: C=US, ST=WA, L=Seattle, O=Examples Company Subordinate CA, OU=Corporate Office, CN=www.example.com Subject Public Key Info: Public Key Algorithm: rsaEncryption Public-Key: (2048 bit) Modulus: 00:c0: ... a3:4a:51 Exponent: 65537 (0x10001) X509v3 extensions: X509v3 Subject Key Identifier: F8:84:EE:37:21:F2:5E:0B:6C:40:C2:9D:C6:FE:7E:49:53:67:34:D9 X509v3 Authority Key Identifier: keyid:0D:CE:76:F2:E3:3B:93:2D:36:05:41:41:16:36:C8:82:BC:CB:F8:A0 X509v3 Basic Constraints: critical CA:TRUE X509v3 Key Usage: critical Digital Signature, CRL Sign Signature Algorithm: sha256WithRSAEncryption 6:bb:94: ... 80:d8

根 CA 证书

证书颁发机构(CA)通常位于一个包含多个其他 CA(这些 CA 之间明确定义了父子关系)的层次结构中。子或从属 CA 由其父 CA 认证,这将创建证书链。位于层次结构顶部的 CA 称为“根 CA”,而其证书称为“根证书”。此证书通常是自签名的。

终端实体证书

终端实体证书可标识服务器、实例、容器或设备等资源。与 CA 证书不同,终端实体证书不能用于颁发证书。终端实体证书的其他常用术语是 “客户端” 或 “叶子” 证书。

自签名证书

由颁发者而不是更高级别 CA 签名的证书。与由 CA 维护的安全根颁发的证书不同,自签名证书充当自己的根,因此其有很大的局限性:这些证书可用于提供在线加密,但不能用于验证身份,并且无法吊销。从安全角度来看,它们是不可接受的。但是,组织仍然使用它们,因为它们易于生成,不需要专业知识或基础设施,而且为许多应用程序所接受。市场上没有针对颁发自签名证书的相应控制体系。使用这些证书的组织会因证书到期产生更大的中断风险,因为它们无法跟踪到期日期。

私有证书

Amazon 私有 CA 证书是可在您的组织内使用的私有 SSL/TLS 证书,但在公共互联网上不可信。使用这些证书来标识资源,如客户端、服务器、应用程序、服务、设备和用户。在建立安全加密的通信通道时,每个资源都使用证书 (如下所示) 以及加密技术来向另一个资源证明其身份。内部 API 终端节点、Web 服务器、VPN 用户、IoT 设备和许多其他应用程序使用私有证书来建立其安全操作所需的加密的通信通道。默认情况下,私有证书不是公开信任的。内部管理员必须显式配置应用程序才能信任私有证书并分发证书。

Certificate: Data: Version: 3 (0x2) Serial Number: e8:cb:d2:be:db:12:23:29:f9:77:06:bc:fe:c9:90:f8 Signature Algorithm: sha256WithRSAEncryption Issuer: C=US, ST=WA, L=Seattle, O=Example Company CA, OU=Corporate, CN=www.example.com Validity Not Before: Feb 26 18:39:57 2018 GMT Not After : Feb 26 19:39:57 2019 GMT Subject: C=US, ST=Washington, L=Seattle, O=Example Company, OU=Sales, CN=www.example.com/emailAddress=sales@example.com Subject Public Key Info: Public Key Algorithm: rsaEncryption Public-Key: (2048 bit) Modulus: 00...c7 Exponent: 65537 (0x10001) X509v3 extensions: X509v3 Basic Constraints: CA:FALSE X509v3 Authority Key Identifier: keyid:AA:6E:C1:8A:EC:2F:8F:21:BC:BE:80:3D:C5:65:93:79:99:E7:71:65 X509v3 Subject Key Identifier: C6:6B:3C:6F:0A:49:9E:CC:4B:80:B2:8A:AB:81:22:AB:89:A8:DA:19 X509v3 Key Usage: critical Digital Signature, Key Encipherment X509v3 Extended Key Usage: TLS Web Server Authentication, TLS Web Client Authentication X509v3 CRL Distribution Points: Full Name: URI:http://NA/crl/12345678-1234-1234-1234-123456789012.crl Signature Algorithm: sha256WithRSAEncryption 58:32:...:53

证书路径

依赖证书的客户端会验证是否存在从终端实体证书(可能通过中间证书链)到受信任根的路径。该客户端会检查路径上的每个证书是否均有效(未吊销)。它还会检查终端实体证书是否未到期、是否完整(未被篡改或修改),以及是否强制实施了证书中的约束。

路径长度约束

CA 证书pathLenConstraint的基本限制设置了其下方链中可能存在的从属 CA 证书的数量。例如,路径长度约束为零的 CA 证书不能具有任何从属 CA。路径长度约束为 1 的 CA 下面可能有最多一级的从属 CA。RFC 5280 将其定义为 “在有效认证路径中可以跟随此证书的最大 non-self-issued 中间证书数量”。路径长度值不包括终端实体证书,尽管关于验证链“长度”或“深度”的非正式语言可能包括它...导致混乱。