Веб-сайт проверки подлинности Windows, проверка подлинности Chrome, IIS и Sharepoint

Для клиента у нас есть веб-сайт с включенной аутентификацией Windows в IIS, который подключается к веб-службе Sharepoint и загружает на него файлы. В IIS включена проверка подлинности Windows:

Служба Sharepoint использует проверку подлинности Windows, запрос строится следующим образом:

WebRequest req = WebRequest.Create(destUri);

req.Method = "PUT";
req.Headers.Add("Overwrite", "F");
req.Timeout = System.Threading.Timeout.Infinite;

req.UseDefaultCredentials = true;
req.PreAuthenticate = true;
req.Credentials = CredentialCache.DefaultCredentials;

Stream outStream = req.GetRequestStream();

В Edge он работает точно так, как ожидалось, но в Chrome или Firefox Sharepoint возвращает ошибку Authorized (401).

Для обоих браузеров мы можем видеть с помощью инструментов разработки браузера, что HTTP-заголовок авторизации отправляется правильно:

WWW-Authenticate: Negotiate oYG2MIGzoAMKAQChCwYJKoZIgvcSAQICooGeBIGbYIGYBgkqhkiG9xIBAgICAG+BiDCBhaADAgEFoQMCAQ+ieTB3oAMCARKicARuzU8jQ5ujyQAOWWouNMC0eMhlMLOECtjeSDjEK42yn4iRjbG4pek8lwuADX2ex/XW5ENE++rWyY8TQPYWEswAjhp0Hz3dI/bXK9q2RBw+s0M7NPeKEuEgxEwM+3coA78KbUZnS7TKk8gEFKpwO4M=

(Например)

Я предполагаю, что проблема связана с тем, как Chrome/Firefox обрабатывает аутентификацию Windows и информацию о пользователе, например пароль, но я не знаю, как это исправить. В конечном итоге мы можем изменить настройки Chrome/Firefox и настройки IIS (например, раздел поставщиков аутентификации Windows). Ниже вы найдете более подробную информацию о запросе, сделанном против Sharepoint, захваченном с помощью Wireshark.

Спасибо !

Wireshark для Chrome (сбой)

Wireshar для Edge (работает)


person AFract    schedule 30.04.2021    source источник