Браузер не отправит клиентский сертификат, если этого не потребует сервер, и вам обычно нужно изменить конфигурацию сервера по умолчанию для запроса клиентского сертификата.Например, в Tomcat вам нужно добавить атрибут clientAuth=true
к элементу Connector, который определяет ваш прослушиватель HTTPS.Вы также можете использовать clientAuth=want
* для запроса сертификата клиента, но при этом разрешить неаутентифицированное соединение.
Если ваш сервер настроен для запроса сертификата клиента, и он все еще не отправляется, то вам может потребоватьсянастроить браузер и / или сервер для доверия сертификату другого.Это особенно актуально, если вы используете самозаверяющие сертификаты - это определенно не будет работать без импорта сертификата клиента в хранилище доверия браузера.
Инструкции Tomcat SSL является хорошей отправной точкой для получения дополнительной информации, некоторые из которых не относятся к Tomcat;если вы используете другой сервер, вам, очевидно, нужно будет найти его документацию для параметров конфигурации.
Если все остальное не помогло, вы можете передать -Djavax.net.debug=ssl
в командной строке, чтобы получить представление о том, что происходитна уровне SSL.
* Старые версии Tomcat использовали optional
для вызова этого поведения.Обратитесь к документации для конкретной версии Tomcat, чтобы определить правильное свойство.