I have also imported the server certificate (the CA one) into IIS. It all works fine when IIS is configured to accept or ignore client certificates. However once it is set to 'Require' I'm getting a 403.7 when requesting the site. I've also tried importing the client certificate to the certificates store in IE/Chrome but again no dice.

This is important, as JSSE won't send a client # certificate if it can't find one signed by the client-ca presented in the CertificateRequest. keytool -import -v \ -alias client \ -file client.crt \ -keystore client.jks \ -storetype JKS \ -storepass:env PW # Export the client CA's certificate and private key to pkcs12, so it's safe. keytool A trusted certificate is signed by a CA's private key. What makes it a CA is that it . a) has special markings that denote it's a CA (well, sort of), and b) it's public key is stored in your trust store meaning your computer trusts it and it's children. If you are using an enterprise certificate solution, generate a client certificate with the common name value format 'name@yourdomain.com', rather than the 'domain name\username' format. Make sure the client certificate is based on the 'User' certificate template that has 'Client Authentication' as the first item in the use list, rather than Generate a self-signed client certificate. For example, this command creates a client certificate test1-cert.crt based on the test1-key.key private key. openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout test1-key.key -out test1-cert.crt For example, instead of generating the client certificate and keys on the server, we could have had the client generate its own private key locally, and then submit a Certificate Signing Request (CSR) to the key-signing machine. In turn, the key-signing machine could have processed the CSR and returned a signed certificate to the client.

Export a client certificate. When you generate a client certificate, it's automatically installed on the computer that you used to generate it. If you want to install the client certificate on another client computer, you need to export the client certificate that you generated. To export a client certificate, open Manage user certificates. The

A trusted certificate is signed by a CA's private key. What makes it a CA is that it . a) has special markings that denote it's a CA (well, sort of), and b) it's public key is stored in your trust store meaning your computer trusts it and it's children. If you are using an enterprise certificate solution, generate a client certificate with the common name value format 'name@yourdomain.com', rather than the 'domain name\username' format. Make sure the client certificate is based on the 'User' certificate template that has 'Client Authentication' as the first item in the use list, rather than Generate a self-signed client certificate. For example, this command creates a client certificate test1-cert.crt based on the test1-key.key private key. openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout test1-key.key -out test1-cert.crt For example, instead of generating the client certificate and keys on the server, we could have had the client generate its own private key locally, and then submit a Certificate Signing Request (CSR) to the key-signing machine. In turn, the key-signing machine could have processed the CSR and returned a signed certificate to the client.

One client certificate could be used for multiple users ? ( Distribute the client certificate to multiple user) If i want to let every user to use unique client certificate, I have to generate a client certificate for every user ?

The PEM-encoded public key of the client certificate, which can be used to configure certificate authentication in the integration endpoint . createdDate -> (timestamp) The timestamp when the client certificate was created.