흐름
- 임의의 문자열로 비밀번호 초기화
- 초기화된 문자열을 메일로 전달 → 메일 발송기능 개발 필요
- 초기화 후 첫 로그인 시 비밀번호 변경 요청
구현 방법
- SMTP 서버 이용
- 네이버, 구글 등의 메일 서버를 이용하여 무료로 발송 가능
- 메일 발송 및 관리 기능 직접 개발 필요
- 메일 발송 서비스 이용 (Mailgun, Sendgrid ... )
- 메일 발송 api 제공 및 관리용 웹페이지 제공
- 사용량에 따라 유료 과금
- 우린 SMTP 사용할 것이다!!
SMTP?
- Simple Mail Transfer Protocol
- 메일 전송을 위한 표준 규약
- SMTP 서버란 표준 규약을 통해 메일을 전송하는 기능을 구현한 서버
Node.js에서 메일 발송
- Nodemailer 패키지를 사용하여 SMTP 서버를 통해 메일을 발송할 수 있음
- 메일 기능을 제공하는 서비스 제공자들은 SMTP 서버를 사용할 수 있게 제공함(네이버, 구글)
사용 방법
- Nodemailer 에서 Gmail을 사용하기 위해서는 앱 비밀번호 설정이 필요 구글 계정설정 → 보안 → 앱 비밀번호 추가
- 생성된 앱 비밀번호는 다시 확인 할 수 없으므로 기록 필수