如何让多个 CA 认证单个证书

How to have multiple CAs certify a single certificate

你知道,只是万一 CA 之一不受客户端信任...下面这张旧图片和 this answer 表明了这种可能性。我有 Microsoft Server CA 和 OpenSSL 仍然感觉不可能。

这与现有问题不重复,但它建立在最近的答案之上,该答案裁定现在可以...在这个问题中,我正在寻求有关如何...的帮助...你为什么一直认为它重复?

Is it possible to have multiple CAs certify a single certificate?

视情况而定,但大多数情况下不会。这取决于所使用的 PKI。有两种广泛使用的 PKI,它们都不允许。

第一个广泛使用的 PKI 在 CA/Browser Baseline Requirements 之下。 CA/B BR 记录了浏览器正在做什么。第二个是 IETF 的 PKIX。它是像 curl 和 wget 这样的用户代理所遵循的。

CA/B 和 IETF 的规则略有不同。有关更深入的讨论,请参阅 How do you sign Certificate Signing Request with your Certification Authority?


现在,还有两个其他选项可能适合您,但它们需要一些工作。

第一个替代选项是 运行 您自己的 PKI 允许它。但是浏览器和其他用户代理不知道如何处理证书。

第二个替代选项是使用包含第二个权威机构认证的扩展。然后,主要授权机构,如 public CA,将签署带有扩展名的请求。扩展名通常用于策略(如传达 "extended validation" 信息),但它可能在这里起作用。


另见超级用户 Is it possible to have a certificate signed by 2 authorities?

另请参阅 PKIX 邮件列表中的 Certificate with Multiple Signers?。 PKIX 是 IETF 提出的互联网 PKI。