부트 캠프를 진행하면서 배웠던 책을 과정 수료 후 집에서 궁금한 부분부터 읽어보고 있는 중인데
@JsonProperty(access = Access.WRITE_ONLY)
@Column(nullable = false)
private String password;
이 어노테이션을 처음 본 것 마냥 신기해하는 나의 모습. 공부를 열심히 해야겠다.
이 어노테이션은 보안상 관리가 필요한 필드에 사용하는 것이 좋은데,
예를들면 User 엔티티에서 password 필드에 사용한 예시를 발견했다.
이 어노테이션의 의미는
직렬화 시에는 값을 출력하지 않고 , 역직렬화 시에만 출력을 하도록 설정하는 것이다.
* 직렬화 : 객체를 Json으로 변환
* 역직렬화 : Json을 객체로 변환
따라서, 사용자가 비밀번호를 저장하는 경우에는 비밀번호가 json 으로 출력되지 않고, 인증을 확인하기 위해서는 비밀번호를 역직렬화(json을 객체로) 해서 사용가능 (json 에서 값을 읽어와서 값을 객체의 필드에 할당)
'👩💻 BackEnd > 🍃 스프링부트 [SpringBoot]' 카테고리의 다른 글
[JSP / Spring Boot] 시큐리티 태그 라이브러리 (0) | 2024.02.21 |
---|---|
[SpringBoot] Spring Security - Session, 사용자의 정보 저장 (1) | 2024.01.08 |
[SpringBoot] 21강 전처리와 후처리 (1) | 2024.01.04 |
[SpringBoot] 19강 CSFR 토큰 해제 (0) | 2024.01.02 |
16강 Spring Security Config 설정 - 로그인 페이지로 이동하도록 설정 (0) | 2023.12.29 |