我正在编写一个使用 Windows 身份验证的 ASP.NET Core 1.0 网站。我已经实现了授权并且正在按预期工作。目前,当给定用户的身份验证失败时,会显示通用的“HTTP 403”错误页面。
如何配置 ASP.NET Core 以便它重定向到我自己的自定义“访问被拒绝”页面?
我尝试了本文中概述的方法,但它对我不起作用(也许是因为我使用的是 Windows Auth 而不是 Forms Auth?)如何使用 ASP.NET MVC 6 重定向未经授权的用户 https://stackoverflow.com/questions/34598319/how-to-redirect-unauthorized-users-with-asp-net-mvc-6
任何帮助,将不胜感激。
Use 状态代码页中间件 https://docs.asp.net/en/latest/fundamentals/error-handling.html#configuring-status-code-pages.
app.UseStatusCodePages(async context => {
if (context.HttpContext.Response.StatusCode == 403)
{
// your redirect
}
});
您还可以通过选择更通用的方法app.UseStatusCodePagesWithRedirects
。中间件可以处理重定向(使用相对或绝对 URL 路径),将状态代码作为 URL 的一部分传递。例如以下内容将重定向到~/errors/403
对于 403 错误:
app.UseStatusCodePagesWithRedirects("~/errors/{0}");
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)