문제

승인이 실패한 후 매개 변수가 추가 된 매개 변수 (수행중인 조치에 따라)로 방문자를 로그인 페이지로 리디렉션하고 싶습니다.

이것은 내가하고 싶은 일의 예입니다.

ASP.NET MVC- 사용자의 로그인을 위해 외부 웹 사이트를 사용하여 필터 작업을 사용자 정의

그러나 이것은 사용자 정의 필터이므로 일반적인 승인 필터에서와 같은 역할을 어떻게 또는 지정할 수 있는지 모릅니다. 나는 다음과 같은 것을 원한다.

[CustomAuthorization(Roles="Admins")]

고맙습니다!

도움이 되었습니까?

해결책

AutherizeAttribute 클래스에서 상속 받고 다음과 같은 문서화 방법을 재정의 할 수 있습니다.

public override void OnAuthorization(AuthorizationContext filterContext)
{
    base.OnAuthorization(filterContext);
    if (!HttpContext.Current.User.IsAuthenticated)
    {
        filterContext.Result = new RedirectResult("target");

    }
}

그런 다음 AuthizeAttribute와 같이이 사용자 정의 필터를 사용할 수 있습니다.

다른 팁

ASP.NET MVC 소스를 다운로드하고 AuthorizeAttribute의 코드 (Autorizeattribute.cs)를 살펴 보셨습니까?

기존 승인 트리치에서 CustomAtorization을 도출하는 것이 합리적 일 수 있습니다.이를 확인하고 필요한 기능을 해결할 수 있는지 확인하십시오.

사용자 정의 인증 클래스에서 request.form을 사용하는 것은 어떻습니까? 결국 포스트 전화일까요? 실제보다 어렵게 만들지 마십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top