Matrimony Ответов: 1

Реализовать олицетворение входа в систему с помощью C#


i want to request a website in my application.
Authentication required for this website when i request it via IE.
i have the id and pw. how can i request it via code?


Authentication 


the login area is not a form build using html. it is a windows popup Authentication window.


Что я уже пробовал:

string authenticationUrl = @"https://xxx"; // it'use https, not sure if this impact anything.
            HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(authenticationUrl);
            req.Credentials = new NetworkCredential("id", "pw");
            using (WebResponse wr = req.GetResponse())
            {
                //error here: Authentication failed because the remote party has closed the transport stream.
            }

F-ES Sitecore

Это зависит от того, как сайт реализует свою безопасность.

Ziee-M

Во-первых, вы должны получить разрешение от веб-сайта, чтобы сделать это. они могут помочь вам, если у них есть, например, служба аутентификации.
Вы не упомянули, что используете (winforms, WPF, может быть, web ?).
Вероятно, вам следует использовать веб-браузер и создать автоматическую логику для входа в систему.
браузер PageLoaded =&ГТ; заполнить подлинности надписи =&ГТ; моделировать связи кнопки.

F-ES Sitecore

Если он использует базовую аутентификацию (всплывающее окно), посмотрите, поможет ли это

https://stackoverflow.com/questions/4334521/httpwebrequest-using-basic-authentication?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa

Если нет, то google "httpwebrequest basic authentication" для получения гораздо большего количества предложений.

1 Ответов

Рейтинг:
1

#realJSOP

Вы можете создать объект веб-запроса HTTP с учетными данными (google-ваш друг). Что вы будете делать с ответом, зависит только от вас.


Ziee-M

Вы не можете войти в систему с помощью webrequests. И даже если это возможно, вы теряете контекст, как только подключаетесь, поэтому в вашем следующем запросе вы должны снова подключиться.

#realJSOP

Неправильно, и неправильно. Я сделал это, и я узнал, как использовать google.

Ziee-M

Я настаиваю, что он не будет работать ни для одного сайта, если параметры (log, pass) не будут переданы в url.
Ваше решение не будет работать для google.com или facebook, например.

Richard Deeming

Если схема аутентификации-это схема Digest, Negotiate, Kerberos, NTLM или Basic, то Джон прав. Установка Полномочия[^] свойство будет работать идеально.

NB: Ни Google, ни Facebook не используют ни одну из этих схем аутентификации. Любой сайт, где вам нужно ввести свои учетные данные на саму страницу, не будет работать с Credentials собственность. Но ОП специально сказал, что это не так.