Браузер запуска WPF с учетными данными - PullRequest
3 голосов
/ 06 августа 2009

Я использую WPF и C #.

Я хочу иметь возможность запускать окно браузера, скорее всего IE, и предоставлять известные учетные данные, чтобы приложение на базе Windows могло обрабатывать переход от самого себя к внешнему браузеру без необходимости повторного ввода своих учетных данных пользователем.

Я знаю, как запустить браузер:

System.Diagnostics.Process.Start(url);

Мой главный вопрос: как я могу прикрепить к нему аутентификацию? Возможно, добавив к нему заголовки как-нибудь?

Наконец, я не хочу использовать новый элемент управления WebBrowser внутри WPF из-за его текущих проблем с отображением в прозрачном окне.

Ответы [ 3 ]

0 голосов
/ 24 ноября 2009

Ник

Аутентификация будет обрабатываться различными способами: -

  1. Проверка подлинности прокси-сервера обрабатывается Windows вручную.
  2. Аутентификация на основе форм обрабатывается с помощью файлов cookie, поэтому пользователь должен иметь файлы cookie.
  3. Windows NTML может находиться в «связке ключей» в операционной системе (запомните этот пароль).

Приветствия

Phil.

0 голосов
/ 24 ноября 2009

1) Вы должны знать, как «войти». Для этого войдите вручную в веб-приложение и отследите http-трафик с помощью http-отладчика, такого как Fiddler. Обратите внимание, какие запросы HTTP отправляются, какие имена имеют параметры и т. Д. Как только вы знаете, какая последовательность http-запросов должна быть отправлена ​​для входа в систему, вы должны сделать это с помощью браузера.

2) Реализовать вход автоматически 2.1) Если по какой-либо причине вход происходит через http GET - просто добавьте правильную строку запроса к URL-адресу и запустите браузер. Это может произойти, только если вы управляете веб-приложением и встраиваете этот механизм, другой разумный вход почти всегда осуществляется как POST с https.

2.2) Если вам нужно выполнить запрос POST, у вас есть несколько вариантов: 2.2.1) Вы можете предоставить локальный HTML-документ, содержащий javascript, и сделать ajax-вызов формы входа в систему из javascript. Для передачи параметров вы можете использовать параметры получения.

2.2.2) Если ничего не работает, вам придется использовать браузер через COM (контроль WebBrowser)

0 голосов
/ 24 ноября 2009

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...