반응형
JSP에서는 java를 사용할 수 있기 때문에 다음과 같이 java 코드를 사용하여 Spring Security Principal을 가져올 수 있습니다.
<%=org.springframework.security.core.context.SecurityContextHolder.getContext()
.getAuthentication().getPrincipal().equals("anonymousUser")
? "false":"true"%>
하지만 jsp에 java 코드를 사용하는건 좋지 않은 방법입니다.
이 때 다음과 같이 사용할 수 있습니다.
1. taglibs 라이브러리를 추가합니다.
* maven의 경우 pom.xml에 추가합니다.
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-taglibs</artifactId>
<version>3.1.3.RELEASE</version>
</dependency>
2. JSP 상단에 다음과 같은 코드를 추가합니다.
<%@ taglib prefix="sec" uri="http://www.springframework.org/security/tags" %>
3. 다음을 추가하여 사용자 개체를 만듭니다.
<sec:authentication var="user" property="principal" />
4. 이제 아래와 같이 사용할 수 있습니다.
${user.userName}
[출처]
https://stackoverflow.com/questions/9048995/get-spring-security-principal-in-jsp-el-expression
https://docs.spring.io/spring-security/site/docs/3.0.x/reference/taglibs.html
728x90
반응형
'웹 개발' 카테고리의 다른 글
spring boot utf8 설정 (0) | 2021.07.25 |
---|---|
[JPA] Entity to DTO, ModelMapper (0) | 2021.07.18 |
spring boot properties 암호화 (Jasypt) (0) | 2021.07.11 |
[Eclipse] Spring boot 프로젝트에서 war 파일 만들기 (0) | 2021.07.04 |
SpringBoot 에서 hibernate.dialect 에러 발생. (로컬서버 실행 안되는 현상) (0) | 2021.07.04 |