다음은 스프링 표현 언어(SpEL)를 정리한 것입니다.
▼ 표 8-4 스프링 표현 언어
표현 |
설명 |
hasRole([role]) |
• 현 권한자가 지정된 [role]을 가졌다면 true로 반환합니다. • [role]에서 ‘ROLE_’ 접두어를 생략할 수 있습니다. |
hasAnyRole([role1, role2]) |
• 현 권한자가 지정된 [role1, role2]에서 하나라도 가졌다면 true를 반환합니다. • 콤마로 구분하여 표현하고 ‘ROLE_’ 접두어를 생략할 수 있습니다. |
hasAuthority([authority]) |
• 현 권한자가 지정된 [authority]를 가졌다면 true로 반환합니다. • [authority]에서 ‘ROLE_’ 접두어를 생략할 수 있습니다. |
hasAnyAuthority([authority1, authority2]) |
• 현 권한자가 지정된 [authority1, authority2]에서 하나라도 가졌다면 true를 반환합니다. • 콤마로 구분하여 표현하고 ‘ROLE_’ 접두어를 생략할 수 있습니다. |
principal |
현 사용자를 나타내는 주요 객체에 직접 접근할 수 있도록 허락합니다. |
authentication |
SecurityContext에서 얻은 현 인증 객체에 직접 접근할 수 있도록 허락합니다. |
permitAll |
현 권한자에 상관없이 항상 true입니다. |
denyAll |
현 권한자에 상관없이 항상 false입니다. |
isAnonymous() |
현 권한자가 익명의 사용자이면 true를 반환합니다. |
isRememberMe() |
현 권한자가 기억된 사용자이면 true를 반환합니다. |
isAuthenticated() |
사용자가 익명이 아니면 true를 반환합니다. |
isFullyAuthenticated() |
익명의 사용자이거나 기억된 사용자가 아니면 true를 반환합니다. |