我正在使用向第三方服务发出API请求的身份验证中间件.然后,此中间件设置后来由AuthorizationHandler结合IAuthorizationRequirement和自定义策略处理的声明.
中间件部分工作,我能够建立声明:
context.User.AddIdentity(identity); // contains claims
我遇到的问题是从处理程序或属性重定向到特定的URL(我们需要重定向的自定义规则).从我尝试的处理程序:
var mvcContext = context.Resource as Microsoft.AspNetCore.Mvc.Filters.AuthorizationFilterContext; mvcContext.Result = new RedirectToActionResult("login", "home", null);
但它被忽略了; 只返回401.AuthorizeAttribute
不再有OnAuthorization所以我也不能使用它...
思考?谢谢.