Проверка подлинности на основе файлов cookie на нескольких основных сайтах Asp.Net - PullRequest
2 голосов
/ 18 июня 2019

Сценарий является проблемой только на компьютере разработчика.

У меня есть несколько разных и полностью независимых проектов ASP.NET Core 2.2, запущенных на моей машине разработчика под "localhost".

После того, как яуспешно аутентифицируясь и входя в один проект, я больше не могу войти в другие проекты.Я предполагаю, что это как-то связано с куки-файлами авторизации.

Все проекты имеют одинаковую идентичность и базовую аутентификацию Identity.

    services.AddAuthentication();

    services.ConfigureApplicationCookie(opt =>
    {
        opt.Cookie.SecurePolicy = Microsoft.AspNetCore.Http.CookieSecurePolicy.None;
        opt.Cookie.HttpOnly = true;                
        opt.Cookie.Expiration = TimeSpan.FromHours(4);
        opt.ExpireTimeSpan = TimeSpan.FromHours(4);
    });

Успешно выполнен вход в систему:

result = await _signInManager.PasswordSignInAsync(portal.ID, model.Username, model.Password, model.RememberMe, true, loggedInUser);

Однако, как только пользователь перенаправлен на домашнюю страницу, на которой требовалась аутентификация, в выводе отладки я вижу следующее:

Microsoft.AspNetCore.Authorization.DefaultAuthorizationService: Information: Authorization failed.

... и пользователь возвращается на страницу входа.

Есть ли способ обойти эту проблему?

Ответы [ 2 ]

1 голос
/ 18 июня 2019

Проблема решена.

services.ConfigureApplicationCookie(opt =>
{
    opt.Cookie.Name = "Unique Value Per App";
});

Все, что мне нужно сделать, это опубликовать сообщение на SO, и проблема решится сама собой.

1 голос
/ 18 июня 2019

Я хотел бы рассмотреть возможность запуска ваших сайтов в разных доменах, а затем сопоставить домены с localhost (или, скорее, 127.0.0.1) в вашем файле hosts.

Этот вопрос объясняет метод: Добавить поддоменна localhost URL

Вот статья, в которой объясняется файл hosts для разных операционных систем: https://www.howtogeek.com/howto/27350/beginner-geek-how-to-edit-your-hosts-file/

...