Во-первых, проблема почти наверняка в том, что сертификат, который вы использовали для защиты Tomcat, не подписан стандартным центром сертификации.Это может стоить, но на самом деле это не так много, и это заставляет клиентов работать намного лучше.Если вы используете SSL в режиме клиентского сертификата (не по умолчанию, но его легко включить), то вы должны также настроить Tomcat, чтобы он знал о подписывающем (или подписывающем) клиентских сертификатах - ну,если они не используют стандартные CA.
Возможно, будет проще, если я объясню это так.Когда один конец соединения SSL (или HTTPS) использует криптографический сертификат, чтобы доказать, кто они - серверы всегда делают это и могут запрашивать то же самое у клиентов - другой конец получает целый пакет подписанных утверждений.о том, кто это, но все же необходимо самостоятельно проверить, что эти утверждения верны.Это делается путем проверки, кто подписал утверждения (и несколько других вещей);если он был подписан доверенным лицом, т. е. центром сертификации, то получатель крипто-удостоверения может знать, с кем он действительно общается.
Хотя это слишком упрощенно: срок действия сертификатов истекает, существуют ограничения на использование, могут быть цепочки доверия, и для HTTPS тоже есть дополнительные проверки.И все же, в конечном счете, все сводится к тому, «с кем я разговариваю, и действительно ли я им доверяю?». Криптография очень помогает в этом, но это означает, что требуется корень доверия.По умолчанию клиенту нужен корень доверия (или корни), но с SSL-аутентификацией клиента это обе стороны.