Включение https для Java Webstart - PullRequest
3 голосов
/ 06 ноября 2008

У меня есть свинг-приложение, развернутое на HTTP-сервере. Пользователи используют браузер для указания URL-адреса и установки клиента с помощью веб-запуска java. Теперь мне нужно включить https доступ к моему приложению, развернутому на HTTP-сервере. Я использую JDK 1.5 как jdk по умолчанию, поддерживаемый в файле jnlp. В настоящее время я использую самозаверяющий сертификат для подписи банок (по умолчанию создается с использованием утилит jarsigner, keytool и т. Д. Sun).

Решение / шаги будут высоко оценены.

Заранее спасибо

Рамеш

Ответы [ 3 ]

2 голосов
/ 05 декабря 2008

Вам необходимо включить HTTPS на веб-сервере. Чтобы получить сертификат, необходимо предоставить учетные данные и имя хоста сервера в центр сертификации (CA), например, VeriSign или Thawte. Они могут предоставить вам сертификат сервера, подписанный их корневым сертификатом или некоторым промежуточным сертификатом. Затем этот сертификат необходимо импортировать на веб-сервер, чтобы включить HTTPS через SSL. Веб-клиенты, такие как браузер или веб-запуск, будут проверять цепочку сертификатов при доступе к серверу.

Если вы используете самозаверяющий jar-файл, всем вашим пользователям будет выдано предупреждение о потенциально небезопасном коде. Чтобы избежать этого, вы должны получить сертификат подписи кода от центра сертификации, который будет несколько похож на сертификат веб-сервера. Этот сертификат, предоставленный центром сертификации, можно импортировать в хранилище ключей и использовать так же, как вы используете самозаверяющий сертификат. Сертификат подписи кода будет подписан центром сертификации, чтобы цепочка сертификатов могла быть проверена с помощью веб-запуска.

1 голос
/ 07 ноября 2008

Насколько я понимаю ваш вопрос, вам не нужно ничего менять в своем коде клиента. Если вы хотите предоставить доступ к JNLP только через HTTPS, вам потребуется только перенастроить сервер приложений, распространяющий JNLP, или если у вас есть веб-сервер перед сервером приложений (как мы делаем здесь: AJP -> tomcat) вам нужно перенастроить веб-сервер, чтобы разрешить доступ к JNLP через HTTPS.

0 голосов
/ 06 ноября 2008

Какая особенность https, которую вы надеетесь использовать?

  • Подписание / проверка подлинности на сервере выполняется с помощью подписи кода, хотя вы подрываете это с помощью самоподписанного сертификата.
  • Содержит ли код вашего приложения секреты, которые должны быть скрыты от подслушивающих?

Поскольку вы говорите, что вам "нужно включить", должна быть основная причина.

Я считаю, что перед тем, как вам "понадобится https", вам нужен соответствующий сертификат для подписи кода. Возможно, вы захотите перефразировать ваш вопрос, чтобы решить основную проблему, а не очень конкретный вопрос.

...