-
Notifications
You must be signed in to change notification settings - Fork 0
Description
고도화할 사항들 우선순위 적용하여 리스트업했습니다.
각 항목은 서브 이슈로 등록해두었습니다.
V1 담당 기능
- 로그인 (OAuth JWT)
- 회원가입 (닉네임, 프로필 이미지)
- 사용자 정보 조회 (메인페이지, 마이페이지)
고도화 및 리팩토링 리스트업
-
S3 이미지 업로드 기능을 구현하여 S3가 활성화되어 있어야 로컬에서도 테스트해볼 수 있는 상황임
profiles 설정을 이용해 application.properties에 no-s3를 설정해두면 S3 없이도 로컬에서 정상 작동하도록 구현하는 것이 로컬에서의 편리한 테스트를 위해서 필요함예상 소요시간: 0.5일
-
현재는 엑세스 토큰만 이용하도록 구현함
보안을 위해 엑세스 토큰 유효기간 줄이고 리프레시 토큰 도입해야 함
rotation까지 구현해 재사용 방지예상 소요시간: 1일
-
엑세스 토큰 LocalStorage에 저장 (보안강화)
현재는 엑세스 토큰을 쿠키에 저장하는 방식으로 구현함
리프레시 토큰을 구현해 엑세스 토큰에 짧은 유효기간을 부여할 수 있다면 CSRF 공격에 덜 취약한 LocalStorage에 저장해두는 것이 더 안전함예상 소요시간: 1일
-
UserService, UserController, AuthService, AuthController에 대한 테스트 코드
예상 소요시간: 3일
-
리프레시 토큰 캐싱
리프레시 토큰이 재사용되는지 파악해 보안을 강화할 수 있음
DB에 접근하는 대신 Redis 캐시를 활용해 DB 부하를 줄일 수 있음
캐싱에 대한 테스트 코드 작성예상 소요시간: 3일
-
프론트엔드에서만 닉네임 유효성 검사를 진행하고 있음
프론트엔드에서만 검사하면 개발자 도구로 공격 가능
보안을 위해 백엔드에서도 이중으로 유효성 검사 필요예상 소요시간: 0.5일
-
UserReponseDto에 스펙 존재 여부까지 포함해야 하는데 따로 보내고 있음
UserResponseDto와 별개로 UserWithSpecResponseDto 필요예상 소요시간: 0.5일
-
GlobalExceptionHandler 작성하여 에러 메시지 통합 관리
예상 소요시간: 0.5일