2013-04-30 1 views
1

У меня есть настройка двустороннего SSL для Weblogic 9.2 для одного из моих проектов. Настройка была совсем не сложной, когда браузер является клиентом.Два способа ssl с Tomcat как клиент для weblogic

Мне нужно настроить tomcat как клиента, вместо этого использовать клиент браузера. В этом случае Tomcat будет размещать JSP-страницу или сервлет и вызывать веб-службу, размещенную на Weblogic. У меня Googled, но я не нашел много документации для этой настройки. Любая идея - будет ли установка HTTPS-разъема работать в этом случае?

Спасибо

+2

Не добавляет ли ключ и сертификат к хранилищу ключей tomcat делать трюк? –

+0

Я сгенерировал сертификат клиента, используя утилиту weblogic CertGen, а затем импортировал его в хранилище ключей, используя weblogic importPrivatekey. Результатом является файл хранилища ключей, который я использовал в файле server.xml. когда я пытаюсь запустить мое приложение, я получаю следующую ошибку com.sun.xml.internal.ws.client.ClientTransportException: HTTP-транспортная ошибка: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: не удалось найти допустимый путь сертификации для запрошенной цели – bostonjava

ответ

1

Наконец я смог настроить его следующим образом.

SSL настроен на сервере Weblogic Генерация сервера закрытый ключ и сертификат

java utils.CertGen -selfsigned -certfile SelfCA.cer -keyfile SelfKey.key -keyfilepass password -cn "localhost"

Создание идентичности хранилищу ключей

java utils.ImportPrivateKey -keystore IdentityStore.jks -storepass password -keypass password -alias trustself -certfile SelfCA.cer.pem -keyfile SelfKey.key.pem -keyfilepass password

сертификат импорта в новый доверительном хранилище

keytool -import -trustcacerts -alias trustself -keystore truststore.jks -file SelfCA.cer.der -keyalg RSA

В ответ на запрос "Введите пароль для хранилища ключей", введите "keypassword"

Вход в WL административную консоль (http://www.xyz.com:7001/console) (по умолчанию имя пользователя = WebLogic и пароль = WebLogic). В моем примере я начал использовать «Weblogic Example Server»

Перейти к серверу-> Пример Server-> Keystore.

Нажмите на «Lock и Edit»

Введите следующую информацию

Keystore dropdown menu: select “Custom Identity and Custom Trust”

Custom Identity Keystore: [LOCATION]\IdentityStore.jks

Custom Indentity Keystore Type: JKS

Custom Identity Keystore Passphrase: password

Custom Trust Keystore: [LOCATION]\truststore.jks

Custom Trust Keystore Type: JKS

Custom Trust Keystore Passphrase: keypassword`

Перейдите на вкладку SSL. Введите следующую информацию

Identity and Trust Location: Keystores

Private Key Alias: trustself

Private Key Passphrase: password

Настройка Tomcat клиента

Сформировать сертификат для Tomcat

keytool -genkey -alias client -keyalg RSA -validity 3650 -keystore client.jks -storepass abcd1234 -keypass abcd1234

keytool -export -alias client -keystore client.jks -storepass abcd1234 -file client.cer

Импорт сертификата доверенных сертификатов, созданный ранее

keytool -import -trustcacerts -alias trustclient -keystore truststore.jks -file client.cer -keyalg RSA

Open [TOMCAT-INSTALL-МЕСТОПОЛОЖЕНИЕ] \ Bin \ catalina.bat в текстовом редакторе. Добавьте следующие строки сразу после строки 187

set JAVA_OPTS=%JAVA_OPTS% -Djavax.net.ssl.trustStore=C:/certs2/truststore.jks -Djavax.net.ssl.trustStorePassword=keypassword -Djavax.net.ssl.keyAlias=trustcleint

set JAVA_OPTS=%JAVA_OPTS% -Djavax.net.ssl.keyStore=C:/certs2/client.jks -Djavax.net.ssl.keyStorePassword=abcd1234

Старт кот.

Тестирование Создание веб-приложения и развертывание в Tomcat. С страницы JSP в веб-приложении invoke sayHello() метод веб-службы https://www.xyz.com:7002/jws_basic_simple/SimpleService, развернутый в WebLogic.

+0

Благодаря следующим ссылкам: http://www.jmezze.net/2011/04/two-way-mutual-ssl-authentication .html и http://www.wikiconsole.com/wiki/?p=312 – bostonjava

Смежные вопросы