如何为 IIS 10+ 创建和使用证书信任列表

How to create and use Certificate Trust List for IIS 10+

我们在服务器上安装了 IIS10 运行,该服务器已将太多证书添加到受信任的根权限存储中。有一个组策略可以在删除任何证书时不断替换这些证书。在这种情况下,IIS 显然无法验证客户端证书,否则有效证书将被拒绝。

据我了解,可以将 IIS 10 配置为使用证书信任列表,而不是依赖受信任的根证书颁发机构列表。我已经创建了一个自签名证书来签署 SSL,我遵循了这个:https://www.pkisolutions.com/how-to-create-certificate-trust-list-ctl-using-powershell/ 到我生成 CTL 的地步,并且可以查看 UI,但我不知道是否有可能 export/import 这个 CTL,如何做,或者这是否可行。

如何导出 CTL 以便将其导入到我的 IIS 服务器中?我走对了吗?

解决方案是将受信任的中间 CA 复制到 Windows“客户端身份验证颁发者”存储中,然后使用 netsh 将站点的 CTL 存储设置为 ClientAuthIssuer:

示例:

netsh http update sslcert ipport=0.0.0.0:443 appid={4dc3e181-e14b-4a21-b022-...} certhash=a95...c68 sslctlstorename=ClientAuthIssuer

要获取 appid 和 certhash,请使用:

netsh http show sslcert

进一步参考: https://social.msdn.microsoft.com/Forums/en-US/54b8da9b-568d-4c5b-8f94-651c3a6de29c/certificate-trust-list-on-iis-85