ASP. NET Базовая аутентификация ADFS без аутентификации - PullRequest
1 голос
/ 28 мая 2020

Я выполнил инструкции из do c https://docs.microsoft.com/en-us/aspnet/core/security/authentication/ws-federation?view=aspnetcore-3.1 для аутентификации ADFS без Identity Framework.

Мое приложение обращается к серверу ADFS и возвращает токен без ошибка, но возвращается на домашнюю страницу, а не на страницу, которая инициировала вызов проверки подлинности. После получения токена при попытке перейти на страницу, требующую авторизации, выполняется еще один вызов сервера ADFS, в ответ отправляется другой токен и снова происходит возврат на домашнюю страницу. Я никогда не могу перейти на внутреннюю страницу.

Нужно ли мне настраивать время обработки токена? После использования ADFS в ASP. NET MVC у меня сложилось впечатление, что исходного вызова было достаточно, а токен сохранялся до закрытия или тайм-аута.

Startup.cs

services.AddAuthentication(sharedOptions =>
            {
                sharedOptions.DefaultScheme = CookieAuthenticationDefaults.AuthenticationScheme;
                sharedOptions.DefaultChallengeScheme = WsFederationDefaults.AuthenticationScheme;
            })
                .AddWsFederation(options =>
                {
                    options.Wtrealm = Configuration["wsfed:realm"];
                    options.MetadataAddress = Configuration["wsfed:metadata"];
                    options.TokenValidationParameters = new TokenValidationParameters()
                    {
                        SaveSigninToken = true
                    };
                })
                .AddCookie();

Внутренний контроллер

 [Authorize]
    public class InternalController : Controller
    {
...