gpt4 book ai didi

asp.net-mvc - asp.net MVC中的IAuthenticationFilter接口(interface)实现

转载 作者:行者123 更新时间:2023-12-01 09:01:44 24 4
gpt4 key购买 nike

我正在浏览 ASP.NET MVC 中的 Controller 类,发现它实现了 IAuthenticationFilter 接口(interface)。但是我无法理解如何在我的 Controller 中实现其方法 OnAuthentication() 和 OnAuthenticationChallenge(),以及何时调用这些方法。

如果有人可以向我解释或与我分享任何解释这一点的链接,那将非常有帮助。即使我在 MSDN 中也找不到任何相关资源。

最佳答案

使用 OnAuthentication 设置或修改当前请求的主体。

使用 OnAuthenticationChallenge 验证当前主体并允许执行当前请求。例如:

public class CustomAuthenticatioFilter : ActionFilterAttribute, IAuthenticationFilter
{
public void OnAuthentication(AuthenticationContext filterContext)
{
//Here you are setting current principal
filterContext.Principal = new ClaimsPrincipal();
}

public void OnAuthenticationChallenge(AuthenticationChallengeContext filterContext)
{
//Here you're checking current action and redirecting to ErrorPage
filterContext.Result = new RedirectToRouteResult("ErrorPage",null);
}
}

关于asp.net-mvc - asp.net MVC中的IAuthenticationFilter接口(interface)实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15877029/

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