Skip to content

Conversation

@zeoueon
Copy link

@zeoueon zeoueon commented Dec 21, 2025

✅ 실습 체크리스트

  • 이론 학습을 완료하셨나요?
  • 미션 요구사항을 모두 이해하셨나요?
  • 실습을 수행하기 위한 공부를 완료하셨나요?
  • 실습 요구사항을 모두 완료하셨나요?

✅ 컨벤션 체크리스트

  • 디렉토리 구조 컨벤션을 잘 지켰나요?
  • pr 제목을 컨벤션에 맞게 작성하였나요?
  • pr에 해당되는 이슈를 연결하였나요?(중요)
  • 적절한 라벨을 설정하였나요?
  • 파트장에게 code review를 요청하기 위해 reviewer를 등록하였나요?
  • 닉네임/main 브랜치의 최신 상태를 반영하고 있는지 확인했나요?(매우 중요!)

📌 주안점

@zeoueon zeoueon requested a review from kfdsy0103 December 21, 2025 07:01
@zeoueon zeoueon self-assigned this Dec 21, 2025
@zeoueon zeoueon linked an issue Dec 21, 2025 that may be closed by this pull request
Copy link
Collaborator

@kfdsy0103 kfdsy0103 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

10주차 워크북까지 수행하시느라 수고 많으셨어요 여니!
리뷰 확인 후 머지 부탁드려요!

Comment on lines +82 to +96
// 회원가입
@PostMapping("/sign-up")
public ApiResponse<MemberResDTO.JoinDTO> signUp2(
@RequestBody @Valid MemberReqDTO.JoinDTO dto
) {
return ApiResponse.onSuccess(MemberSuccessCode.FOUND, memberCommandService.signUp(dto));
}

// 로그인
@PostMapping("/login")
public ApiResponse<MemberResDTO.LoginDTO> login2(
@RequestBody @Valid MemberReqDTO.LoginDTO dto
) {
return ApiResponse.onSuccess(MemberSuccessCode.FOUND, memberQueryService.login(dto));
}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'로그인/회원가입'과 같이 권한 관련 코드들은 Member가 아닌, 따로 Auth 패키지를 파서 관리하기도 한답니다!
참고해주세요!

Comment on lines +38 to +51
.authorizeHttpRequests(requests -> requests
.requestMatchers(allowUris).permitAll()
.requestMatchers("/swagger-ui/index.html").hasRole("ADMIN")
.anyRequest().authenticated()
)
.addFilterBefore(jwtAuthFilter(), UsernamePasswordAuthenticationFilter.class)
.formLogin(AbstractHttpConfigurer::disable)
.csrf(AbstractHttpConfigurer::disable)
.logout(logout -> logout
.logoutUrl("/logout")
.logoutSuccessUrl("/login?logout")
.permitAll()
)
.exceptionHandling(exception -> exception.authenticationEntryPoint(authenticationEntryPoint()))
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

JWT를 사용한다면 세션 비활성화를 명시적으로 적어주는 것도 좋아보이네요!

http
    .sessionManagement(session -> 
        session.sessionCreationPolicy(SessionCreationPolicy.STATELESS));

Comment on lines +21 to +25
jwt:
token:
secretKey: ${JWT_SECRET_KEY}
expiration:
access: ${JWT_EXPIRATION_ACCESS}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

잘 가려놓으셨군요 bb

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Chapter10_로그인 및 회원가입

2 participants