Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Доступ к защищённой Web-странице (SSL) 
:(
    Опции темы
mindflyer
Дата 20.1.2005, 22:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 113
Регистрация: 20.10.2004
Где: Smolensk, Russia

Репутация: нет
Всего: 4



Нужно считать защищённую страничку в интернете.
Использую код:
-------------
URL url = new URL(textURL.getText());
URLConnection connection = url.openConnection();

String inp = "user" + ":" + "passw";
String encoding = new BASE64Encoder().encode(inp.getBytes());
connection.setRequestProperty("Authorization", "Basic" + encoding);

connection.connect();
-------------
Выполняю и получаю Exception:
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: No trusted certificate found
at com.sun.net.ssl.internal.ssl.BaseSSLSocketImpl.a(Unknown Source)
...

Вопрос первый: правильный ли код?
Вопрос второй: как установить/подключить сертификат? Краем уха где-то что-то слышал про некий keytool(?), с помощью которого можно импортировать имеющийся сертификат (в виде файла) в соответствующее хранилище.
И ещё вопрос, вероятно, не имеющий отношения к собственно Java: как получить этот самый файл сертификата? Когда заходишь на страницу с помощью IE он спрашивает доверяем или нет и может занести его в список доверительных. Может из хранилища IE как-то выцепить?
PM MAIL ICQ   Вверх
lovermann
Дата 21.1.2005, 01:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 285
Регистрация: 28.12.2004
Где: Прага

Репутация: нет
Всего: 8



Насколько я понимаю, правильность кода проверяется его запуском и глядением в то, что он делает, нет? smile
PM WWW ICQ   Вверх
Domestic Cat
Дата 21.1.2005, 02:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5452
Регистрация: 3.5.2004
Где: Dallas, US

Репутация: 1
Всего: 172



Вот посмотри:
http://www.paypaldev.org/topic.asp?TOPIC_ID=228
http://forum.java.sun.com/thread.jspa?foru...threadID=295242

Если получится, напиши решение сюда smile


--------------------

PM   Вверх
mindflyer
Дата 21.1.2005, 21:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 113
Регистрация: 20.10.2004
Где: Smolensk, Russia

Репутация: нет
Всего: 4



Спасибо за ссылки. Буду разбираться. Если успешно, напишу отчёт smile
PM MAIL ICQ   Вверх
AntonSaburov
Дата 24.1.2005, 14:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Штурман
****


Профиль
Группа: Модератор
Сообщений: 5658
Регистрация: 2.7.2002
Где: Санкт-Петербург

Репутация: 2
Всего: 118



Цитата(mindflyer @ 21.1.2005, 21:05)
Если успешно, напишу отчёт

Скажем дружно БОЛЬШОЕ СПАСИБО smile
PM MAIL WWW ICQ   Вверх
3,14
Дата 11.10.2005, 17:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1614
Регистрация: 18.6.2004
Где: Н. Новгород

Репутация: нет
Всего: 24



Да, отчёта к сожалению так и не запостили, поэтому я исправлю это недоразумение ибо сам столкнулся с этой же проблемой:

Код

       SSLContext sc = null;    
       TrustManager[] trustAllCerts = new TrustManager[] {
                new X509TrustManager() {
                  public java.security.cert.X509Certificate[] getAcceptedIssuers(){
                    return null;
                   }
                  public void checkClientTrusted(java.security.cert.X509Certificate[] certs, String authType) {}
                  public void checkServerTrusted(java.security.cert.X509Certificate[] certs, String authType) {}
          }
      };
      try {
          sc = SSLContext.getInstance("SSL");
          sc.init(null, trustAllCerts, new java.security.SecureRandom());
      }
      catch (Exception e) {}
      URL myURL = new URL("https://somewhere.com");
      HttpsURLConnection uc = (HttpsURLConnection) myURL.openConnection ();
      uc.setSSLSocketFactory(sc.getSocketFactory());



--------------------
Может быть, это только мой бред,
Может быть, жизнь не так хороша,
Может быть, я не выйду на свет,
Но я летал, когда пела душа...
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Работа с сетью | Следующая тема »


 




[ Время генерации скрипта: 0.1419 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.