멋사 Backend 54일차 🦁

신재원·2023년 7월 7일

🌳 Spring

  • SpringDataJpa 쿼리 메소드

Optional<T> find ~ By() : 조회
boolean exsist ~ By : 존재 여부 논리값으로 반환

📢 Spring Security

  • 개인적인 생각으로 Spring 중 가장 어려운 파트인것 같다.

스프링 시큐리티의 인증 구현

사용자의 관리를 위해 UserDetailsManager 인터페이스를 사용 구현 합니다.

  • UserDetailsManager : 대부분 애플리케이션에서 필요한 메소드를 구현합니다.

@Value (Lombok이 아님)

@Value 어노테이션을 통해 yml / propertise의 설정의 값을 가져올수 있습니다.

"${ }" 표현식으로 작성합니다. 아래와 같이 작성하게 되면

  • 설정 파일 이름에 맞춰서 값을 가져옵니다.

JWT 란?

Json Web Token 이라고 하며, 인증에 필요한 정보들을 암호화 시킨 토큰을 의미합니다. (위변조가 어려움)

  • 접근 토큰을 HTTP 헤더에 실어 서버에 전달하며 별도의 저장소를 사용하지 않습니다. (간편성)

세션 vs 쿠키 vs 토큰

  • 세션과 쿠키의 차이점은 이전 블로그를 참고하면 감사하겠습니다.

  • 가장 큰 차이점으로는 토큰은 세션 / 쿠키와 달리 "토큰" 안에 사용자의 정보를 담는 점입니다.
  • 세션 / 쿠키는 세션 저장소에 사용자의 정보를 담습니다.
  • 클라이언트 입장에서는 HTTP 헤더에 동일하게 전달되어 오는것 같지만,
    서버측에서는 인증을 위해 "암호화"를 해야되는것인지, 별도의 저장소를 이용 해야 하는것인지의 차이가 있습니다.

📌 결론적으로 "세션 / 쿠키" 방식과 "JWT (토큰)" 방식으로 나뉘는것 입니다.

Reference

https://chan-coding-book.tistory.com/51

0개의 댓글