ASP.NET Core 2.0 Identity, 2 контроллера перенаправляют каждый на разные страницы входа - PullRequest
0 голосов
/ 25 сентября 2018

У меня есть 2 контроллера

  • TestController
  • DemoController

Оба они используют атрибут [Authorize] и идентификатор по умолчанию для входа в систему: электронная почта + пароль.

Мой вопрос: как я могу перенаправить все неаутентифицированные запросы, идущие в TestControoler, в TestAccountController / Login и все запросы, идущие в DemoController, в DemoAccountController / Login?

причина в том, что я хочу получить2 среды входа в систему для 2 различных целей.

1 Ответ

0 голосов
/ 25 сентября 2018

Ядро ASP.net поддерживает несколько схем аутентификации.

Вы можете добавить две, добавив в свой файл Startup.cs следующее:

services.AddAuthentication()
  .AddCookie("scheme1", options => { options.LoginPath = "/login1"; })
  .AddCookie("scheme2", options => { options.LoginPath = "/login2"; });

, а затем указать схему для использования в контроллере.:

[Authorize(AuthenticationSchemes = "scheme1")]
public sealed class SampleController : Controller
{
  //...
}

Подробнее см. https://docs.microsoft.com/en-us/aspnet/core/security/authorization/limitingidentitybyscheme?view=aspnetcore-2.1&tabs=aspnetcore2x

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...