Я пытаюсь использовать аутентификацию AzureAD в ASP. Net Базовом приложении и при выполнении некоторых действий контроллера не требуется, чтобы пользователь входил в систему.
Использование Visual Studio 2019, если я создаю совершенно новый ASP. Net Приложение Framework и выберите учетные записи Work / School для аутентификации - HomeController имеет атрибут Authorize. Как только я запускаю приложение, я перенаправляюсь на экран входа Azure. Если я переместу атрибут Authorize из верхней части контроллера Home в действие Contact, при запуске приложения я не буду перенаправлен на вход в систему, пока не нажму ссылку Contact. Это именно то, что я ожидал.
Если я создам новое ASP. Net Базовое приложение (снова выбирая учетные записи Work / School для аутентификации) - и переместите атрибут Authorize из верхней части Домашний контроллер для действия конфиденциальности - я перенаправлен на вход в систему, как только я запускаю приложение, вместо того, чтобы ждать перехода к действию конфиденциальности.
Пример кода
Этот
[Authorize]
public class HomeController : Controller
...
public IActionResult Privacy()
...
ведет себя так же, как этот
public class HomeController : Controller
...
[Authorize]
public IActionResult Privacy()
...
в ASP. Net Core.
1) Чем отличается аутентификация между этими двумя? 2) Существует ли простой способ заставить приложение ASP. Net Core проходить аутентификацию только при нажатии на атрибут Authorize?