gpt4 book ai didi

asp.net-mvc - ASP.NET MVC使用自定义角色提供程序重定向到拒绝访问页面

转载 作者:行者123 更新时间:2023-12-03 09:14:15 25 4
gpt4 key购买 nike

我正在创建一个自定义角色提供程序,并设置了一个Authorize属性,以指定 Controller 中的角色,它的工作正常,如下所示:

[Authorize(Roles="SuperAdmin")]
public class SuperAdminController : Controller
...

但是,当用户无权访问此 Controller 时,他将被重定向到登录页面。
如何将他重定向到“AcessDenied.aspx”页面?

最佳答案

[AccessDeniedAuthorize(Roles="SuperAdmin")]
public class SuperAdminController : Controller

AccessDeniedAuthorizeAttribute.cs:
public class AccessDeniedAuthorizeAttribute : AuthorizeAttribute
{
public override void OnAuthorization(AuthorizationContext filterContext)
{
base.OnAuthorization(filterContext);

if(filterContext.Result is HttpUnauthorizedResult)
{
filterContext.Result = new RedirectResult("~/AcessDenied.aspx");
}
}
}

关于asp.net-mvc - ASP.NET MVC使用自定义角色提供程序重定向到拒绝访问页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1279643/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com