2

问题:如何让 Windows 检测到适合在“受信任的根证书颁发机构”中安装的证书?

背景:我正在构建一个内部站点,并希望用户能够下载服务器的根证书并将其作为“受信任的根证书颁发机构”安装在他们的 Windows 证书信任库中。当用户打开证书文件时,他们会进入常规的证书检查屏幕。

在此处输入图像描述

然后用户可以单击“安装证书”,然后选择“根据证书类型自动选择证书存储”。

不可避免地,选择此选项会将证书安装到“中间证书颁发机构”而不是“受信任的根证书颁发机构”

在此处输入图像描述

根证书在 OpenSSL 中作为自签名根证书生成。openssl x509 报告:

    X509v3 extensions:
        X509v3 Basic Constraints: critical
            CA:TRUE, pathlen:1

如果出于安全原因,Windows 禁止以这种自动方式将证书安装为受信任的根证书颁发机构,我不会感到惊讶,但我根本无法在 Microsoft 或 MSDN 站点上找到任何解释其“自动选择”的文档作品。任何澄清将不胜感激。

4

1 回答 1

2

如果出于安全原因,Windows 禁止以这种自动方式将证书安装为受信任的根证书颁发机构,我不会感到惊讶,但我根本无法在 Microsoft 或 MSDN 站点上找到任何解释其“自动选择”的文档作品。

你遇到了确切的问题。Microsoft 不允许用户在受信任的根 CA 存储中自动安装 CA 证书。您应该指示用户在适当的商店中安装此证书。

ps 我完全不喜欢您分发根证书的方式。用户怎么知道是你的证书?他们怎么知道您不会试图冒充任何其他网站?整个想法看起来很糟糕。如果有很多客户,那么我建议从商业提供商处购买最便宜的 SSL 证书。

于 2015-05-10T17:15:31.483 回答