Как залогиниться через HTTPS

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

MIT
Мега гуру
Мега гуру
Аватара пользователя
 
Сообщения: 2211
Зарегистрирован: 17.09.2006 (Вс) 22:46

Как залогиниться через HTTPS

Сообщение MIT » 04.09.2008 (Чт) 20:48

Создаю программу, которая должна пройти процедуру входа на сайт. Как это работает по HTTP я понял, но с HTTPS возникли проблемы. Вычитал, что в HttpWebRequest надо передавать сертификат CredentialCache.DefaultCredentials, но при вызове myHttpWebRequest.GetResponse VS сильно ругается на SSL.

Объясните, пожалуйста, как все это должно работать, если можно, то с примером.
Изображение
You can change your face, but can`t change your mind. No matter what you do.
Создайте еще более понятный интерфейс и мир создаст еще более тупого юзера. (с) Баш

Williams
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1280
Зарегистрирован: 06.05.2008 (Вт) 18:35
Откуда: System.Reflection.Williams (увидел себя в зеркале :))

Re: Как залогиниться через HTTPS

Сообщение Williams » 04.09.2008 (Чт) 20:52

Мне кажется так должно работать:

Код: Выделить всё
Dim req As HttpWebRequest = HttpWebRequest.Create(URL)
        req.Credentials = New NetworkCredential("user", "pass")
И вы думаете, что вас оставят в живых после прочтения этого поста?

MIT
Мега гуру
Мега гуру
Аватара пользователя
 
Сообщения: 2211
Зарегистрирован: 17.09.2006 (Вс) 22:46

Re: Как залогиниться через HTTPS

Сообщение MIT » 04.09.2008 (Чт) 20:59

А User и Pass от чего? От учетной записи пользователя на компе?
Изображение
You can change your face, but can`t change your mind. No matter what you do.
Создайте еще более понятный интерфейс и мир создаст еще более тупого юзера. (с) Баш

Williams
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1280
Зарегистрирован: 06.05.2008 (Вт) 18:35
Откуда: System.Reflection.Williams (увидел себя в зеркале :))

Re: Как залогиниться через HTTPS

Сообщение Williams » 04.09.2008 (Чт) 21:01

MIT писал(а):А User и Pass от чего? От учетной записи пользователя на компе?

От чего угодно - смотря какая тебе аутентификация нужна.
И вы думаете, что вас оставят в живых после прочтения этого поста?

MIT
Мега гуру
Мега гуру
Аватара пользователя
 
Сообщения: 2211
Зарегистрирован: 17.09.2006 (Вс) 22:46

Re: Как залогиниться через HTTPS

Сообщение MIT » 04.09.2008 (Чт) 21:03

Залогиниться надо на сайт, значит от учетной записи на сайте?
Изображение
You can change your face, but can`t change your mind. No matter what you do.
Создайте еще более понятный интерфейс и мир создаст еще более тупого юзера. (с) Баш

Williams
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1280
Зарегистрирован: 06.05.2008 (Вт) 18:35
Откуда: System.Reflection.Williams (увидел себя в зеркале :))

Re: Как залогиниться через HTTPS

Сообщение Williams » 04.09.2008 (Чт) 21:04

MIT писал(а):Залогиниться надо на сайт, значит от учетной записи на сайте?

логично
И вы думаете, что вас оставят в живых после прочтения этого поста?

MIT
Мега гуру
Мега гуру
Аватара пользователя
 
Сообщения: 2211
Зарегистрирован: 17.09.2006 (Вс) 22:46

Re: Как залогиниться через HTTPS

Сообщение MIT » 04.09.2008 (Чт) 21:07

The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel.


Код: Выделить всё
myHttpWebRequest.Credentials = New NetworkCredential("user", "pass")
        myHttpWebRequest = HttpWebRequest.Create("https://url_2")
        If cbProxy.Checked Then myHttpWebRequest.Proxy = New WebProxy(TextBox1.Text, CInt(Val(TextBox2.Text)))
        myHttpWebRequest.Referer = "http://url_1"
        myHttpWebRequest.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; MyIE2;"
        myHttpWebRequest.Accept = "image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*"
        myHttpWebRequest.Headers.Add("Accept-Language", "ru")
        myHttpWebRequest.ContentType = "application/x-www-form-urlencoded"


        If Not String.IsNullOrEmpty(sCookies) Then
            myHttpWebRequest.Headers.Add(HttpRequestHeader.Cookie, sCookies)
        End If
        myHttpWebResponse = myHttpWebRequest.GetResponse() ''<--error


Когда логинился через браузер сниффер перед каждым запросом к HTTPS есть строчка
CONNECT myurl:443 HTTP/1.0
User-Agent: Opera/9.27 (Windows NT 5.1; U; ru)
Host: myurl:443

Может в этом дело?
Изображение
You can change your face, but can`t change your mind. No matter what you do.
Создайте еще более понятный интерфейс и мир создаст еще более тупого юзера. (с) Баш

MIT
Мега гуру
Мега гуру
Аватара пользователя
 
Сообщения: 2211
Зарегистрирован: 17.09.2006 (Вс) 22:46

Re: Как залогиниться через HTTPS

Сообщение MIT » 04.09.2008 (Чт) 22:33

Вроде прошел!

Инфу нарыл тут (теория в основном)

http://www.realcoding.net/article/view/4224
http://www.sources.ru/cpp/cpp_ssl_request.shtml
http://www.silicontaiga.ru/home.asp?artId=6219

Уважаемые модераторы, тему пока не закрывайте, мало ли, что еще не понятно будет
Изображение
You can change your face, but can`t change your mind. No matter what you do.
Создайте еще более понятный интерфейс и мир создаст еще более тупого юзера. (с) Баш

MIT
Мега гуру
Мега гуру
Аватара пользователя
 
Сообщения: 2211
Зарегистрирован: 17.09.2006 (Вс) 22:46

Re: Как залогиниться через HTTPS

Сообщение MIT » 05.09.2008 (Пт) 0:24

HTTPS Прошел, пришлось правда с сертефикатами повозиться. Теперь другая проблема появвилась: Как сюда прикрутить прокси? Если просто
HttpWebRequest.Proxy = New WebProxy(addr, port)
то появляется обшибка, типа не может установить подключение.
Изображение
You can change your face, but can`t change your mind. No matter what you do.
Создайте еще более понятный интерфейс и мир создаст еще более тупого юзера. (с) Баш

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Re: Как залогиниться через HTTPS

Сообщение Viper » 05.09.2008 (Пт) 10:56

MIT писал(а):Уважаемые модераторы, тему пока не закрывайте, мало ли, что еще не понятно будет
Модераторы тему без причин не закрывают. Посему тема продолжит жить.
Весь мир матрица, а мы в нем потоки байтов!


Вернуться в Visual Basic .NET

Кто сейчас на конференции

Сейчас этот форум просматривают: Mail.ru [бот] и гости: 101

    TopList