Поддержка как индивидуальных, так и рабочих или школьных учетных записей на основе каталога - PullRequest
0 голосов
/ 20 июня 2019

Я создаю сайт ASP.NET Core Razor (версия 2.2). Веб-сайт в основном состоит из двух областей: административной области для владельцев веб-сайта и пользовательской области. В структуре каталогов есть все страницы, обращенные к клиенту, в папке «Pages» и все страницы администрирования в подпапке «Admin».

Я хотел бы использовать проверку подлинности для рабочей или школьной учетной записи (один клиент) для всех страниц в папке «Admin». Это позволит администраторам использовать свои учетные записи Azure AD для входа в систему для управления веб-сайтом. Для всех остальных страниц я хочу использовать аутентификацию индивидуальных учетных записей пользователей с локальным хранилищем данных.

В настоящее время у меня работает аутентификация Azure AD, но возможно ли указать два разных механизма аутентификации на основе каталога, в котором страницы в разделе «Администратор» будут использовать Azure AD, а все остальные страницы будут использовать индивидуальные учетные записи)?

Существует аналогичный пост, в котором другие указали ответ, но это было более 4 лет назад и не использовало ASP.NET Core, поэтому, пожалуйста, не закрывайте его, указав на эту статью. ( Возможно ли использовать как Azure AD, так и индивидуальную учетную запись для аутентификации в одном приложении ASP.NET MVC? )

В настоящее время у меня есть только код AzureAD.

services.AddAuthentication(AzureADDefaults.AuthenticationScheme)
    .AddAzureAD(options => Configuration.Bind("AzureAd", options));

services.AddMvc(options =>
{
    var policy = new AuthorizationPolicyBuilder()
        .RequireAuthenticatedUser()
        .Build();
    options.Filters.Add(new AuthorizeFilter(policy));
})
.SetCompatibilityVersion(CompatibilityVersion.Version_2_2);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...