“关闭自动根证书更新”和第三方根证书

“关闭自动根证书更新”和第三方根证书

组策略设置“关闭自动根证书更新”可防止 Windows 删除无法验证的证书。

如果第三方向我提供了他们自己的自签名根证书,我除了关闭自动根证书更新之外别无选择,否则他们的自签名证书将由于组策略规则在某个时候被删除。

禁用此检查是否不安全?

我还有其他选择吗?我可以设置更细粒度的规则,以便 Windows 不会删除特定证书,但会继续更新我已安装的其他证书吗?

笔记:

我正在使用基本的 c# 应用程序来部署证书,使用以下代码:

X509Certificate2 certificate = new X509Certificate2("trusted-root-cert.cer");
X509Store store = new X509Store(StoreName.AuthRoot, StoreLocation.LocalMachine);

store.Open(OpenFlags.ReadWrite);
store.Add(certificate);
store.Close();

我需要通过代码安装证书,因为我的软件作为多台机器组成的场的一部分运行,手动安装任何东西都不切实际。

此外,这些机器位于工作组中,而不是域中。

答案1

据我所知,证书通过组策略部署在自动根证书更新运行时不会被删除。

我找不到来自 MSFT 的明确参考。这就是我在客户环境中部署私有 CA 根证书的方式,而且我没有遇到它们被自动删除的问题。(当然,既然我这么说了……>叹息<)

答案2

有两种方法可以将自定义根证书分发给域成员:

  1. 通过以下方式分发组策略(已经提到)

当只有特定域成员应安装此证书(因为 GPO 支持定位)或存在特定自定义属性时,应使用此选项。

  1. 将其发布到 Active Directory。

此方法用于将根 CA 证书发布到所有 AD 林成员(而 GPO 方法只能在特定域/站点内使用)。此外,此方法支持命令行(与 GPO 方法不同):

certutil -dspublish <path\certfilename.crt> RootCA

其中<path\certfilename.crt>是证书文件的路径。客户端将在下一次自动注册触发时从 AD 下载此证书。

相关内容