Windows 证书模板:如何使某些模板的证书可识别

Windows 证书模板:如何使某些模板的证书可识别

我使用 X.509 客户端证书通过双向 TLS 对一组定义明确的 Windows 客户端进行身份验证。存在一个证书模板,该模板向该组中所有客户端颁发此类证书,但不向其他客户端颁发。

在服务器端,我可以运行评估 X.509 证书的代码,以查看它是否由该模板颁发。

但是,模板名称或 ID 不是 X.509 数据的一部分。

还有其他方法可以通过模板将唯一信息放入证书中吗?例如

  • 修改主题(例如,包含一些通用 AD 属性或固定值)
  • 添加或修改另一个 x.590 证书属性

看来我可以使用来实现这一点

  • 从特定的中间 CA 颁发证书(通过受信任的根列表在服务器上易于验证)
  • 使用自定义密钥使用扩展(需要服务器端的特定代码)

然而,这两种方法的部署都相当困难。

(这是Windows 证书模板:如何在 SSL/TLS 客户端证书中包含组(或 OU)声明我可能问错了问题)

答案1

但是,模板名称或 ID 不是 X.509 数据的一部分。

事实证明那是错的,我只是错过了。

模板 ID 和版本以 OID 编码1.3.6.1.4.1.311.21.7定义为MS-WCEE 2.2.2.7.7.2 szOID_CERTIFICATE_TEMPLATE

相关内容