JWT
3. RefrshToken은 왜 Redis를 사용해 관리할까?
Redis
security 설정(security config)
1. [Spring Security] 4. UsernamePasswordAuthenticationFilter
security 테스트
1. 인프런질의 - SpringSecurity 사용 시 Controller 테스트
▶ 3번 withMockUser 커스텀 관련
- WithSecurityContextFactory ※ 야는 도메인 protected이기 때문에 도메인 테스트 패키지 일치 해야함(삽질...)
- WithMockCustomUser → 시큐리티에서 CustomUserDetail 커스텀했을시, 안했으면 디폴트 WithMockUser 쓰면 된다.
3번 커스텀 했으면 이런식으로 권한/상태 커스텀 객체 넣으면서 테스트 가능 ↓
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD, ElementType.TYPE})
@WithMockCustomUser(userStatus = UserStatus.ACTIVE, role= UserRole.ROLE_USER)
public @interface WithMockActiveUser {
}
OAuth2
1. 백엔드에서 소셜 로그인을 구현해보자 : 카카오, 구글, 네이버 3종 적용기
2. 구글
3. 네이버
4. 카카오 - 카카오팀 블로그
5. 각 서비스의 provider_id를 조회 - 카카오, 네이버, 구글
Hexagonal Architecture & DDD
1. hexagonal-architecture-template - kamilmazurek
2. 토비의 클린 스프링 - 도메인 모델 패턴과 헥사고날 아키텍처 Part 1
Duration Binding
1. Converting Durations - spring reference
- Duration 뿐만아니라 Period도 있고 Data Size도 있음!!
- 뭐가 바인딩 되는지는 위 레퍼런스 참고하면 됨 JWT 만료시간 value를 이로 정함 (.env랑 JwtTokenProvider 참고)
커스텀 예외 (필터예외, 컨트롤러예외 별도 처리)
1. Custom Exception, ExceptionHandler 설계에서 나쁜 코드에 대한 고민과 리펙토링 과정
2. HTTPS_STATUS
3. [Spring Security] Spring Security 예외를 @ControllerAdvice와 @ExceptionHandler를 사용하여 전역으로 처리해보자
-> 이는 필터 예외 터진걸 우회해서 ControllerAdvice로 적용하는 방법, 이 방법 말고 필터는 entryPoint에서 json 형태로 던지고, MVC예외는 ControllerAdvice에서 처리하도록 변경
4. EnrtyPoint 설정했더니, oauth2에서 제공하는 /login 페이지까지 사라지는 현상 해결
- 문제점 : securityConfig에서 enrtyPoint 설정 + loginform disable 함 → /login이 permitAll이지만 SecurityFilterChain을 여전히 타기 때문에 /login을 필터밖으로 빼야됌
5. 공통예외처리(다른점은 에러코드 인터페이스로 Getter로 다형성이용 호출하고, @RestControllerAdvice를 이용함)
→ 여기서 주의할건, security는 filter라인에서 HandlerExceptionResolver 이용안하면 throw로 뭘 던지던 500번대 오류코드가 작동함. 그래서 throw 부분에 아래 코드를 다 넣음. 애가 시큐리티 예외를 controllerAdvice로 던져줌
exceptionResolver.resolveException(request, response, null, e);
return;
□ Domain Event(spring data JPA)
- [SpringBoot] AbstractAggregateRoot로 DomainEvent 발행하기
ASCIIDOC 틀 참고한거
1. [tab]기능
2. 기본 사용법
spring - Scheduler
1. 설정 법 및 cron
1. Mockoon
- fake json 만들어주는 UI : 프론트에서 백서버 완성안될때 쓰는거라던데, 금융 fake api를 이걸로 구현하면 개꿀일듯? 더미 json파일로 알아서 만들수 있다. 사용법도 생각보다 쉬움.
- 유투브 링크
- 공식
'프로젝트 기록 > Implementation Notes' 카테고리의 다른 글
| 아키텍쳐 구조 및 패키지 (0) | 2025.12.19 |
|---|---|
| 엔티티 - User, UserInfo 설계 의도 정리 및 구현 (4) | 2025.12.19 |