Аутентификация на основе сертификатов Java - PullRequest
0 голосов
/ 03 мая 2010

У меня есть экономная конечная точка, которую создал кто-то, кто больше не работает в нашей компании. Они внедрили аутентификацию через клиентские сертификаты, но мне было трудно понять, как все это работает. Кто-нибудь знает учебник или Howto по этой теме.

Все, что у меня есть, это образец клиентского класса. Вот список вещей, с которыми мне нужна помощь:

  1. Может ли серверный сертификат и сертификат клиента находиться в одном хранилище доверенных сертификатов
  2. Как создать новый сертификат на стороне клиента?
  3. Как добавить этот сертификат на стороне клиента в доверенное хранилище сервера?
  4. Нужно ли установить клиентское хранилище доверия и установить доверие Java (при условии, что сервер является самозаверяющей конечной точкой)
  5. Что означает следующая ошибка?

    ОШИБКА [com.cada.CadaDaoTest] [main] - Ошибка: org.apache.thrift.transport.TTransportException: javax.net.ssl.SSLHandshakeException: получено фатальное предупреждение: bad_certificate

1 Ответ

1 голос
/ 03 мая 2010

Склад доверенных сертификатов (в Tomcat он настроен для коннектора SSL в server.xml) может содержать корень цепочки сертификатов сертификата клиента, а не сам сертификат. То есть, когда сертификат создается, он подписывается центром сертификации. Если сертификат CA является доверенным, все сертификаты, подписанные CA, также являются доверенными.

Вы можете создавать сертификаты, используя keytool (в jdk/bin/) или openssl . Для этого есть GUI, например portecle .

Учебник tomcat ssl может быть полезен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...