У меня есть тестовое веб-приложение ASP.NET Core 2.0, которое аутентифицирует пользователя с использованием SAML. Все хорошо, если URL-адрес, введенный в браузере, совпадает с регистром имени веб-приложения в IIS 10 (например ... / MyTestSite). Однако, если пользователь вводит другой регистр (например, ... / mytestsite), он не сможет аутентифицироваться.
В коде точка отказа находится в методе OnGetCallbackAsync
класса ExternalLogin
в этой строке:
var info = await _signInManager.GetExternalLoginInfoAsync();
Начиная с info == null
, в этих случаях пользователь перенаправляется обратно на страницу входа.
Я заметил, что токен .AspNetCore.Antiforgery
имеет значение пути из URL (/ mytestsite), но значение пути Identity.External
является именем сайта (/ MyTestSite).
Я не уверен, почему это происходит или почему дело будет иметь значение.