<!-- 이슈이름은 '[컨벤션] 기능이름' 으로 통일해주세요. ex. [FEAT] searchPublicCourse --> <!-- 라벨로 담당자를 표시 --> <!-- assignees은 자기 자신에 해당하는지 팀에 해당하는지에 따라 작성 --> ## 🚀 기능 설명 - 회원가입 및 비밀번호 재설정 과정에서 사용할 이메일 인증 코드 발송 기능 구현 - POST /api/auth/email/send API를 추가 - 요청한 이메일과 인증 목적에 따라 6자리 인증 코드를 생성하고 Redis에 저장 - 회원가입 목적일 경우 이미 가입된 이메일인지 확인 - 범위를 작게 유지하기 위해 이번 이슈에서는 실제 이메일 발송은 하지 않고 인증 코드를 로그로 확인할 수 있도록 구현 - 이메일 인증 코드 검증 API, 회원가입 API와 인증 코드 검증 연동, 비밀번호 재설정 전체 구현은 제외 ## 🏆 작업 목록 <!-- 이 기능이 추가되면 어떤 이점이 있나요? --> - EmailVerificationSendRequest DTO 생성 - EmailVerificationSendResponse DTO 생성 - 이메일 형식 검증 - 인증 목적 purpose 검증 - signup 목적일 경우 이메일 중복 확인 - 6자리 숫자 인증 코드 생성 - Redis에 인증 코드 저장 - 인증 코드 만료 시간 180초 적용 - 재발송 제한 시간 60초 적용 - 60초 이내 재요청 시 429 에러 반환 - AuthService에 이메일 인증 코드 발송 메서드 구현 - AuthController에 POST /api/auth/email/send 엔드포인트 추가 - 이메일 인증 관련 ErrorCode 추가 - SecurityWhitelist에 인증 제외 경로 추가 - Swagger에서 이메일 인증 코드 발송 API 테스트 - 기존 회원가입 기능 정상 동작 확인 ## 🔗 참고 자료 <!-- 참고한 자료가 있나요? -->
🚀 기능 설명
🏆 작업 목록
🔗 참고 자료