Пользователи будут получать доступ к сайту через свою внутреннюю сеть, а приложение будет использовать проверку подлинности Windows.
У меня приложение настроено для обслуживания IIS при запуске:
Код: Выделить всё
if (useWindowsAuth)
{
services.Configure(iis =>
{
iis.AuthenticationDisplayName = "Windows";
iis.AutomaticAuthentication = false;
});
}
Код: Выделить всё
[Authorize(AuthenticationSchemes = IISDefaults.AuthenticationScheme)]
public class WindowsModel : PageModel
Когда страница загружается, я правильно получаю запрос на ввод учетных данных пользователя.
Когда пользователь нажимает кнопку выхода из системы, я предоставляю ему кнопку, позволяющую вернуться к входу в систему. На этом этапе учетные данные должны появиться снова.
Однако после входа в систему и повторного посещения страницы входа запрос пропускается.
Если Я удаляю кеш браузера, файлы cookie и историю, а затем перезагружаю страницу и снова получаю сообщение. Похоже, что браузер сохраняет аутентификацию.
Как мне программно отменить аутентификацию пользователя ИЛИ как программно очистить кеш, файлы cookie и т. д. из браузера поэтому приглашение отображается каждый раз, когда пользователь посещает страницу входа в систему?
Или есть лучший способ, чтобы это приглашение отображалось каждый раз при загрузке страницы?
Заранее спасибо!
Что я пробовал:
Я пытался отправить ответ Unauthorized() из метода OnGet страницы, который работает при первом посещении, но при каждом последующем посещении страницы приглашение пропускается.
Подробнее здесь: https://stackoverflow.com/questions/793 ... -an-asp-ne