Programming/Asp.Net MVC
ActionFilter
Bandcy
2014. 7. 22. 15:39
Action filter의 동작
권한이 없는 경우
권한이 있는 경우
Action filter 구현
권한을 위한 AuthorizeAttribute를 상속하여, filtering 합니다.
public class CustomAuthorizationAttribute : AuthorizeAttribute
{
public CustomAuthorizationAttribute() { }
protected override bool AuthorizeCore(HttpContextBase httpContext)
AuthorizeCore에서 custom logic을 적용합니다.
권한이 없어 false를 반환하는 경우, login page로 redirection합니다.
UnautorizeException 등을 발생하는 것을 Application_Error에서 handling하여, 임의의 page로 redirection시키는 것이 가능합니다.
Filter 적용
Attribute name |
기능 |
비고 |
Autorize |
인증된 사용자만 허용 |
|
AllowAnonymous |
인증되지 않은 사용자 허용 |
|
CustomAuthorization |
Role-base Db를 통해 action에 대한 권한을 check 함 |
Action name을 별도로 넘길 필요는 없음 |