학습/개발노트
-
[JWT] 어디에 저장하는게 좋을까?학습/개발노트 2022. 10. 28. 22:35
사전 준비 Authentication Server에서 API서버에 AccessToken과 RefreshToken을 발급한 상태 클라이언트에 저장방법 1. SessionStorage 세션 변수로써 새창, 새로고침 등에 추가로직이 필요함 2. Localstorage 글로벌 변수 XSS 취약점 : 방어 불가능 ex) 공격예제 3. 로컬변수 새로고침 시 토큰이 사라짐 4. 쿠키 XSS 취약점 : HttpOnly 속성 사용으로 방어 가능 alert(document.cookie); 스니핑 : Secure 속성 사용으로 방어 가능 https://ko.wikipedia.org/wiki/%ED%8C%A8%ED%82%B7_%EB%B6%84%EC%84%9D%EA%B8%B0 패킷 분석기 - 위키백과, 우리 모두의 백과사전 위..
-
OAUTH 2.0 정리학습/개발노트 2022. 10. 19. 21:09
용어 정리 ex) 티스토리에서 카카오 로그인 [ Target ] Resource Owner : 유저, 사용자 Client Server : 애플리케이션 제공서버 ( 티스토리 ) Resource Server : 인증, 권한 부여 서버 ( 카카오 ) [ Jargon ] Client Id : Client Server의 고유 ID Client Secret : Client Server의 비밀번호 Redirect URL : Client Server에서 Resource Server에 인증을 요청한 이후 Resource Server가 Client Server에 응답값을 전송하기 위한 URL Scope list: 권한 목록 Authorization code : Resource Server가 승인한 코드 티스토리 카카오톡 ..
-
FINAL 키워드의 집착을 버려본다.학습/개발노트 2022. 10. 14. 00:07
final 변수가 불변이라는 사실을 명확하게 알 수 있다. Builder 패턴을 통해 vo를 불변객체라고 명확하게 알려주었다. @Getter public class UserInfo { private final Long id; private final String password; private final String name; private final String gradeCode; private final LocalDateTime createdAt; private static final Long PASSWORD_MIN_LENGTH = 6L; private static final Long PASSWORD_MAX_LENGTH = 18L; @Builder public UserInfo(Long id, Stri..