I was getting the following error from iSS when testing locally a web api that requires ssl client certificates:
403.16 The client certificate used for this request is not trusted by the Web server
certutil -f -urlfetch -verify "public client cert.cer"The tool will show any errors encountered when validating the cert, such as a failure to lookup the revocation list (CRL) of the issuer.
You can also capture the details of the client certificate, like the subject name, issuer and serial number, by adding custom fields to your IIS log. Instructions are here and the fields are under "Server Variables".
The specific issue I was having, however, is described in the answer to https://stackoverflow.com/questions/26247462/http-error-403-16-client-certificate-trust-issue . I had a Trusted Root cert that was invalid. After removing that cert from the Trusted Root Store at the computer level, the IIS was able to trust my client certificate. The interesting thing was that the Trusted Root cert I removed was not related at all to my client cert, so IIS was basically just failing because of an unrelated cert.
Comments