Подтвердить что ты не робот

Использование скрипача с проверкой подлинности Windows

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

Для тестирования я назначил учетные данные прокси-сервера сетевым учетным данным

System.Net.WebProxy proxy = new System.Net.WebProxy("127.0.0.1", 8888);
proxy.Credentials = System.Net.CredentialCache.DefaultNetworkCredentials;
//proxy.Credentials = new System.Net.NetworkCredential("1", "1");
System.Net.WebRequest.DefaultWebProxy = proxy;

В настоящее время я использую Fiddler с правилом Require Proxy Authentication. Как настроить Fiddler, чтобы я мог использовать учетные данные Windows вместо учетных данных "1" / "1"?

4b9b3361

Ответ 1

В Fiddler 4.6 я могу включить "Автоматически аутентифицировать" в Composer → Options. Затем успешно запускается мой WebAPI, размещенный в IIS с использованием Windows Authentication. Вы можете увидеть три запроса в журнале для одного вызова.

  • HTTP/1.1 401 Unauthorized Cache-Control: private Content-Type: text/html; charset=utf-8 Server: Microsoft-IIS/10.0 WWW-Authenticate: Negotiate WWW-Authenticate: NTLM

  • HTTP/1.1 401 Unauthorized Content-Type: text/html; charset=us-ascii Server: Microsoft-HTTPAPI/2.0 WWW-Authenticate: Negotiate oYIBDTCCAQ... Date: Mon, 18 Jan 2016 09:38:22 GMT Content-Length: 341

  • HTTP/1.1 200 OK Content-Type: application/json; charset=utf-8 Expires: -1 Server: Microsoft-IIS/10.0 X-AspNet-Version: 4.0.30319 Persistent-Auth: true WWW-Authenticate: Negotiate oRsw... Date: Mon, 18 Jan 2016 09:38:22 GMT Content-Length: 4

Ответ 2

Вы не можете легко сделать это с помощью Fiddler; вам нужно будет самостоятельно вычислить учетную запись и добавить проблему в заголовок ответа после возврата ответа HTTP/407 с заголовком Proxy-Authenticate: Negotiate.

В отличие от этого, аутентификация BASIC легко поддерживается одним заголовком ответа, как работает функция Fiddler "Требовать аутентификацию прокси".