ASP.Net MVC 2를 사용하여 AuthorizeAttribute
클래스를 기반으로하는 클래스 내에 Controller 클래스의 RedirectToAction() 메서드를 사용할 수 있습니까?커스텀 AuthorizeAttribute 클래스에서 RedirectToAction()을 사용할 수 있습니까?
public class CustomAttribute : AuthorizeAttribute {
protected override bool AuthorizeCore(HttpContextBase context) {
// Custom authentication goes here
return false;
}
public override void OnAuthorization(AuthorizationContext context) {
base.OnAuthorization(context);
// This would be my ideal result
context.Result = RedirectToAction("Action", "Controller");
}
}
나는 다시 직접 할 수있는 사용자를 특정 컨트롤러/액션에 그들은 로그인 페이지로 반환하는 대신 인증에 실패 할 때 방법을 찾고 있어요. 해당 컨트롤러/작업에 대해 리디렉트 URL을 생성 한 다음 RedirectResult()을 사용할 수 있습니까? URL을 하드 코딩하려는 유혹을 피하려고합니다.
고마워, 그거야. HandleUnauthorizedRequest 사용에 대한 좋은 이해 - 다른 튜토리얼/토론에서 본 OnAuthorization을 사용하고있었습니다. 인증에 실패하면 설정된 리다이렉트를 트리거 할 사용자 정의 속성이 있습니다. –
@ LanceMcNearney filterContext 매개 변수에서 무엇을 전달하겠습니까? – Pomster
@Craig Stuntz filterContext로 무엇을 전달하겠습니까? – Pomster