Использование веб-службы с использованием двухстороннего SSL с использованием клиентского кода Orbeon

Мы пытаемся использовать веб-сервис из клиентского кода orbeon. Все работает нормально с односторонним SSL, однако теперь мы хотим вызвать веб-сервис с использованием двухстороннего SSL. Мы можем вызывать веб-сервис с использованием двухстороннего SSL, успешно используя инфраструктуру Apache CXF с использованием кода Java.

Я следовал инструкциям, изложенным в Orbeon Wiki.

Изменения, сделанные в properties-local.xml

<property as="xs:anyURI"
      name="oxf.http.ssl.keystore.uri"
      value="/apps/property/ClientStore.jks"/>
<property as="xs:string"
      name="oxf.http.ssl.keystore.password"
      value="password"/>
<property as="xs:anyURI"
      name="oxf.url-rewriting.service.base-uri"
      value="http://localhost:8085/Orbeon"/>
<property as="xs:anyURI"
      name="oxf.fr.persistence.exist.uri"
      value="http://localhost:8085/fr/service/exist"/>
<property as="xs:anyURI"
      name="oxf.fr.persistence.exist.exist-uri"
      value="http://localhost:8085/exist/rest/db/orbeon/fr"/>

После внесения изменений, описанных выше, мы получаем исключение ниже:

ERROR XFormsServer  - xforms-submit-error - setting throwable {throwable:
    "javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated
    at com.sun.net.ssl.internal.ssl.SSLSessionImpl.getPeerCertificates(Unknown Source)
    at org.apache.http.conn.ssl.AbstractVerifier.verify(AbstractVerifier.java:128)
    at org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFactory.java:390)
    at org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFactory.java:488)
    at org.apache.http.conn.scheme.SchemeSocketFactoryAdaptor.connectSocket(SchemeSocketFactoryAdaptor.java:62)
    at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:148

Варианты запуска Java:

-Djavax.net.ssl.trustStorePassword=password
-Djavax.net.ssl.keyStore=/apps/property/DMClientStore.jks 
-Djavax.net.ssl.keyStorePassword=password
-Djavax.net.ssl.trustStore=/apps/property/trustkeystore.jks

Вопросы:

  1. Достаточно ли этих свойств для включения двухстороннего SSL?

  2. Для Apache CXF нам необходимо предоставить два хранилища ключей: одно с клиентским сертификатом и доверенное хранилище. Где мы настраиваем оба этих хранилища ключей для Orbeon?

0 ответов

Другие вопросы по тегам