Chromedriver in Selenium and SSL certificate
Instead of installing the Client Certificate you could just tell Chrome to ignore the untrusted certificate error using the --ignore-certificate-errors
command line switch.
To do this, create your instance of ChromeDriver
as follows:
DesiredCapabilities capabilities = DesiredCapabilities.chrome();
capabilities.setCapability("chrome.switches", Arrays.asList("--ignore-certificate-errors"));
driver = new ChromeDriver(capabilities);
You can tell the Chrome browser to use a specific client certificate for a particual URL by adding a registry KEY with the following content:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\AutoSelectCertificateForUrls\1 = "{\"pattern\":\"https://www.example.com\",\"filter\":{\"ISSUER\":{\"CN\":\"cn of issuer\"}}}"
You may add additional entries by adding additional keys under the same branch.
It's a little more complex on Linux as you need to modify the preferences which are in json format under the following location:
~/.config/chromium/Default/Preferences
It looks like the above option only works for machines joined to an Active Directory domain. In case the above steps don't work You may try using a preconfigured template to introduce the changes available for download from the following url: https://www.chromium.org/administrators/policy-templates