The code that validates PKINIT strong certificate mapping currently only checks the serial number and does not validate the issuer name. This makes the mapping weak because multiple CAs could issue certificates with the same serial number. Additionally, this type of mapping is not listed as supported by Windows in MS-PKCA or KB5014754. According to MS-PKCA, serial numbers should be mapped by the issuer and serial number fields: "X509:<I>" + Issuer Name field with "\r" and "\n" replaced with "," + "<SR>" + Serial Number field. (MS-PKCA p. 17 v20250603). git-ref: a33d2e61feff514141e78251b5e95474fab87804
My bad, is_strong_certificate_mapping() correctly identifies issuer_name and serial_number as a strong mapping.
We could still implement the "\r" and "\n" mappings, as I don’t think we do those yet.