Взаимная аутентификация с помощью Spark Java

Я пытаюсь получить сервер REST API с взаимной аутентификацией, используя spark-java и из документации. видеть:

безопасный (keystoreFilePath, keystorePassword, truststoreFilePath, truststorePassword);

... похоже, это именно то, что мне нужно. Однако я могу выполнить только одностороннюю аутентификацию сервера, сертификат клиента никогда не проверяется на хранилище доверенных сертификатов. Я использую версию 2.1, любые советы или указатели будут очень признательны.


person thechane    schedule 15.01.2017    source источник
comment
Это всего лишь предположение, но пытались ли вы обновить SparkJava до текущей версии?   -  person Laercio Metzner    schedule 16.01.2017
comment
Я попробую, хотя я проверял примечания к выпуску, и там нет упоминания об этом. Хотя попробовать не помешает.   -  person thechane    schedule 20.01.2017
comment
... пробовал на 2.5.4, не помогло к сожалению.   -  person thechane    schedule 30.01.2017


Ответы (1)


Вроде в Spark в версии 2.6.0 добавили то, что нужно. Теперь есть вторая версия secure:

 /**
     (...)
     * @param needsClientCert    Whether to require client certificate to be supplied in
     *                           request
     (...)
     */
public synchronized Service secure(String keystoreFile,
                                       String keystorePassword,
                                       String truststoreFile,
                                       String truststorePassword,
                                       boolean needsClientCert)

Он устанавливает setNeedClientAuth(true) и setWantClientAuth(true) для базового объекта SslContextFactory веб-сервера Jetty.

person tpaczesny    schedule 13.07.2017