Web Framework & Library/Next.js
[Next.js] NextAuth + sendmail 을 이용한 메일 인증 기반 회원가입 기능 구현 --- (1) Introduction
노호호
2025. 2. 4. 16:30
위 플로우 차트와 같은 회원가입 절차를 Next.js에서 구현하고자 했다.
관건은 3가지이다.
- Next.js에서 인증 기능 구현을 어떻게 할 것인가
- 메일 인증은 어떻게 받을 것인가
- 개인 정보 입력 시 메일 인증을 받은 사람과 그렇지 않은 사람을 어떻게 구분할 것인가
각각에 대해 아래와 같은 해결법을 찾았다.
1. Next.js에서 인증 기능 구현을 어떻게 할 것인가
-> NextAuth라는 Next.js용 인증 라이브러리 사용
2. 메일 인증은 어떻게 받을 것인가
-> Sendmail 이라는 리눅스 프로그램을 사용하여 SMTP 서버 구축
3. 개인 정보 입력 시 메일 인증을 받은 사람과 그렇지 않은 사람을 어떻게 구분할 것인가
-> 메일 인증을 받지 않은 사람은 개인 정보 입력 페이지로 넘어갈 수 없게 하고자 한다.
데이터베이스에 메일 인증용 테이블을 만들고(제한 시간: 10분) 인증이 된 사용자에 한해 현재 브라우저에 JWT를 10분 동안 발급
다음 글부터 이를 어떻게 구현했는지에 대해 하나씩 기술할 예정이다.