Windows Server 2008: сайт IIS, не удается загрузить файлы из API после обновления Windows - PullRequest
0 голосов
/ 11 мая 2019

У нас возникла эта повторяющаяся проблема на одном из наших веб-серверов, когда после обновления сервера наши приложения, позволяющие пользователям загружать файл / вложение с контроллера .NET API, начинают получать ошибки 401.

Мы пытались решить множество проблем: разрешения, повторное развертывание, пул приложений, перезапуск сайта, учетные записи служб, изменение кода API и т. П., Но в итоге происходит то, что проблема в конечном итоге решается случайным образом имы не знаем, что мы сделали, чтобы это исправить.Последнее, что мы попробовали, это восстановит функциональность в предыдущий раз, но не сработает в следующий раз, когда возникнет проблема.Это кажется случайным.

Единственный паттерн, который нам удалось различить, заключается в том, что эта проблема начинает возникать всякий раз, когда происходит обновление безопасности для Windows.

Итак, прошлой ночью был установлен KB4493472, изагрузка перестала работать снова.Администраторы сервера, кажется, не имеют ни малейшего представления, и я не могу найти что-либо в Интернете.У кого-нибудь есть понимание этого?

Сервер является Windows 2008 R2 SP1.Каждое приложение находится в собственном пуле приложений, работающем на .NET 4.0. Для сайта используется проверка подлинности Windows.

Код API ниже

FileInfo info = new FileInfo(filepath);
if (info.Exists)
{
    HttpResponseMessage response = new HttpResponseMessage(HttpStatusCode.OK);
    var stream = new FileStream(filepath, FileMode.Open, FileAccess.Read);
    response.Content = new StreamContent(stream);

    response.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment");
    response.Content.Headers.ContentDisposition.FileName = attachment.FileName;

    return response;
}

Попытка загрузки файла приводит к

"Не удалось - требуется авторизация"

Любая помощь будет высоко ценится.

...