|
0 / 0 / 0
Регистрация: 20.02.2008
Сообщений: 23
|
|
JSSE и HTTPS соединение с аутентификацией клиента28.04.2008, 12:00. Показов 1924. Ответов 0
Метки нет (Все метки)
Нужно HTTPS соединение с аутентификацией клиента. Использую JSSE 1.02.
С помощью утилиты keytool сгенерил пару ключей, сделал самоподписанный запрос на сертификат. Отослал запрос на собственный СА (из win2000) и получил сертификат, подписанный этим СА. Импортировал сей сертификат в keystorage. Туда же добавил сертификат сервера как доверенный сертификат (как certificate entry). В общем, анонимный HTTPS проходит нормально. Проблема возникает когда настраиваешь сервер на аутентификацию клиента. Клиент почему-то не отсылает свой сертификат серверу. После получения от сервера запроса на сертификат клиент пишет: main, SEND SSL v3.0 ALERT: warning, description = no_certificate сервер пишет: warning: Client did not supply a certificate, closing connection дальше продолжаются хэндшейки и при попытки отправки данных на сервер вываливается exception: java.io.IOException: Error writing to server Мой код: System.setProperty('java.protocol.handle r.pkgs', 'com.sun.net.ssl.internal.www.protocol') ; System.setProperty('javax.net.debug','al l'); java.security.Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider()) ; System.setProperty('javax.net.ssl.trustS tore', 'D:/work/mykeystore'); com.sun.net.ssl.SSLContext ctx; com.sun.net.ssl.KeyManagerFactory kmf; java.security.KeyStore ks; ctx = com.sun.net.ssl.SSLContext.getInstance(' SSL'); kmf = com.sun.net.ssl.KeyManagerFactory.getIns tance('SunX509'); ks = java.security.KeyStore.getInstance('JKS' ); ks.load(new java.io.FileInputStream('D:/work/mykeystore'), '123123'.toCharArray()); kmf.init(ks, '123123'.toCharArray()); ctx.init(kmf.getKeyManagers(), null, null); com.sun.net.ssl.HostnameVerifier hv = new com.sun.net.ssl.HostnameVerifier() { public boolean verify(String urlHostname, String certHostname) { System.out.println('HTTPS hostname wrong in server certificate.'); return true; } }; com.sun.net.ssl.HttpsURLConnection.setDe faultHostnameVerifier(hv); java.net.URL url = new java.net.URL('https://servlet_address'); com.sun.net.ssl.HttpsURLConnection conn = (com.sun.net.ssl.HttpsURLConnection) url.openConnection(); conn.setRequestMethod('POST'); conn.setDoOutput(true); conn.setDoInput(true); conn.setUseCaches(false); java.io.InputStream in0; String rres = ''; java.io.ObjectOutputStream out = new java.io.ObjectOutputStream(conn.getOutpu tStream()); out.writeObject('Hello, server! It's me - CLIENT!'); out.close(); in0 = conn.getInputStream(); //connect java.io.ObjectInputStream in = new java.io.ObjectInputStream(in0); rres = (String) in.readObject(); System.out.println('Response from server:'+' '+rres); Почему же клиент не отсылает свой сертификат? Спасибо.
0
|
|
| 28.04.2008, 12:00 | |
|
Ответы с готовыми решениями:
0
Https соединение не находит сертификат Https соединение с сертфикатам пользователя Как сделать HTTPS соединение в Тomcat? |
| 28.04.2008, 12:00 | |
|
Помогаю со студенческими работами здесь
1
Https соединение с сертфикатам пользователя и сервера https & php (зашифрованное соединение) Соединение клиента и сервера Закрыть соединение со стороны клиента
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
|
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях.
Задача: при копировании документа очищать определенные реквизиты и табличную. . .
|
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git
main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели
8ATzM_2aurI
|
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2.
Задача: запретить редактирование документа, если он открыт у другого пользователя.
/ / . . .
|
|
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои.
А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
|
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
kYBz3eJf3jQ
|
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
|
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
|