Я не могу изменить путь по умолчанию «отказано в доступе» Account/AccessDenied
при использовании аутентификации Azure AD. Какие настройки мне нужно настроить, чтобы переопределить это?
Я просмотрел несколько статей, включая this , но пока безуспешно.
Мой текущий startup.cs
код выглядит так -
services.AddAuthentication(AzureADDefaults.AuthenticationScheme)
.AddAzureAD(options => Configuration.Bind("AzureAd", options))
.AddCookie(options =>
{
options.AccessDeniedPath = "/Error/AccessDenied";
options.Events = new CookieAuthenticationEvents
{
OnRedirectToAccessDenied = ctx =>
{
var requestPath = ctx.Request.Path;
if (requestPath.StartsWithSegments("/Account"))
{
ctx.Response.Redirect("/Error/AccessDenied?ReturnUrl=" + requestPath + ctx.Request.QueryString);
}
else
{
ctx.Response.Redirect("/Login?ReturnUrl=" + requestPath + ctx.Request.QueryString);
}
return Task.CompletedTask;
}
};
});
Это перенаправление не работает, и событие также не запускается. Я пытался установить параметры cookie с помощью services.ConfigureApplicationCookie
, но это тоже не работает (документация говорит, что это в любом случае для модуля идентификации).
Чего мне не хватает?
Мой проект asp.net использует .net core 2.2, и его шаблон был сгенерирован из шаблона Visual Studio.