Skip to content

feat: 회원 탈퇴 기능 구현 (Soft Delete) #119

Open
solyrion wants to merge 1 commit into
developfrom
feature/member-withdrawal
Open

feat: 회원 탈퇴 기능 구현 (Soft Delete) #119
solyrion wants to merge 1 commit into
developfrom
feature/member-withdrawal

Conversation

@solyrion

Copy link
Copy Markdown
Collaborator

Summary

  • 회원 탈퇴 기능을 Soft Delete 방식으로 구현했습니다. 탈퇴한 회원은 memberStatus가 DELETED로 변경되며, 모든 인증 및 로그인 플로우에서 자동으로 차단됩니다.
  • 탈퇴 후 같은 이메일/닉네임으로 재가입이 가능합니다.

Changes

Core Implementation

  • MemberEntity: deletedAt 필드, withdraw(), isDeleted() 메서드 추가
  • MemberRepository: 탈퇴 회원 제외 쿼리 메서드 추가 (findByEmailAndMemberStatusNot
    등)
  • MyPageService: Hard Delete → Soft Delete로 변경

Security & Authentication

  • 모든 로그인/인증 플로우에서 탈퇴 회원 필터링 적용
    • 이메일 로그인, OAuth 로그인 (Google, Naver, Kakao)
    • 회원가입 중복 체크, 비밀번호 재설정
    • JWT 인증 (CustomUserDetailService)

Technical Details

  • 방식: Soft Delete (memberStatus = DELETED)
  • 재가입: 탈퇴 후 동일 이메일/닉네임으로 재가입 가능
  • 보안: JWT 필터에서 탈퇴 회원 자동 차단

Test Plan

  • 회원 탈퇴 시 memberStatus가 DELETED로 변경되는지 확인
  • 탈퇴 후 로그인 시도 시 차단되는지 확인
  • 탈퇴 후 같은 이메일로 재가입 가능한지 확인
  • MyPageServiceTest 수정 (delete → save 검증)

@solyrion solyrion self-assigned this Jun 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant