我使用 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