未经授权时重定向
Redirect when unAuthorize
我正在研究 ASP.NET 核心 2.x。我正在处理 unAuthorize(按角色)页面的 Access Denied 页面。
这是我的管理员控制器:
[Authorize(Roles = "Administrator")]
public class AdminController : Controller
{
}
这是我在 HR 和 Fin 的其他角色:
[Authorize(Roles = "HRManager,Finance")]
public class SalaryController : Controller
{
}
我将代码 AddAuthentication 放入 ConfigureServices (Startup.cs)
services.AddAuthentication ()
.Services.ConfigureApplicationCookie (options => {
options.AccessDeniedPath = "/Account/AccessDenied";
});
当人力资源和财务角色的用户尝试访问管理菜单时,我希望这些用户会重定向到 AccessDenied 页面,但事实并非如此。它重定向到
/Account/Login?ReturnUrl=%2FAdmin
我也准备了一个空白的 AccessDenied.cshtml 页面,但它从未到达。
这个问题有什么解决办法吗?
或者我在 AddAuthentication 中遗漏了什么?
试试 .net core 2.0
add this in to your startup.cs in ConfigureServices method
services.ConfigureApplicationCookie(options => options.LoginPath = "/Account/LogIn");
我正在研究 ASP.NET 核心 2.x。我正在处理 unAuthorize(按角色)页面的 Access Denied 页面。 这是我的管理员控制器:
[Authorize(Roles = "Administrator")]
public class AdminController : Controller
{
}
这是我在 HR 和 Fin 的其他角色:
[Authorize(Roles = "HRManager,Finance")]
public class SalaryController : Controller
{
}
我将代码 AddAuthentication 放入 ConfigureServices (Startup.cs)
services.AddAuthentication ()
.Services.ConfigureApplicationCookie (options => {
options.AccessDeniedPath = "/Account/AccessDenied";
});
当人力资源和财务角色的用户尝试访问管理菜单时,我希望这些用户会重定向到 AccessDenied 页面,但事实并非如此。它重定向到
/Account/Login?ReturnUrl=%2FAdmin
我也准备了一个空白的 AccessDenied.cshtml 页面,但它从未到达。
这个问题有什么解决办法吗? 或者我在 AddAuthentication 中遗漏了什么?
试试 .net core 2.0
add this in to your startup.cs in ConfigureServices method
services.ConfigureApplicationCookie(options => options.LoginPath = "/Account/LogIn");