회원가입 만들다가 문득 생각남.
“이거 가입만 되면 뭐해. 인증도 안 되는데…” 😅
그래서 이메일 인증 흐름까지 GPT한테 던져봤는데
와… 진짜 다 해준다. 토큰 발급부터 검증, DB에 저장, 메일 전송, 보안 처리까지.
우리가 설계하면서 고민할 거 GPT가 먼저 챙겨서 짜줌.
아래 프롬프트 이대로 복붙하면 됨
프롬프트
복사
넌 인증/보안 기능에 숙련된 시니어 풀스택 개발자야. 나는 지금 Next.js 기반 회원가입 시스템에 "이메일 인증 기반 계정 활성화" 기능을 추가하려고 해. 아래 환경, 목표, 보안 기준에 맞게 전체 구조와 코드를 작성해줘.
[기술 스택 및 환경]
- 프레임워크: Next.js 13 이상 (App Router 구조)
- 언어: TypeScript
- ORM: Prisma
- 데이터베이스: PostgreSQL
- 메일 전송: nodemailer 또는 추천 SMTP 라이브러리
- 비밀번호 암호화: bcrypt
[기능 흐름 요약]
1. 유저가 이메일/비번으로 회원가입
2. 서버는 inactive 계정 만들고 인증 토큰 생성해서 저장
3. 유저 메일로 인증 링크 전송
4. 유저가 링크 클릭 → 토큰 검증 → 계정 활성화
5. 링크는 24시간 유효 + 1회용
6. 인증 안 된 계정은 로그인 불가
[보안 처리 포함]
- 토큰은 단방향 해시로 저장 (절대 평문 X)
- 만료/잘못된 토큰 처리 확실히
- 인증 안 된 계정은 로그인 차단 + 메시지 출력
- 인증 결과 페이지도 만들어줘 (성공/실패/만료 상태 안내)
[요청하는 것]
- Prisma 모델 구성 (User + Token 테이블)
- API route (`/api/auth/register`, `/api/auth/verify-email`)
- 메일 보내는 유틸 함수
- 인증 토큰 생성/검증 로직
- 회원가입 UI 예시
- 인증 결과 페이지 예시
- 코드에 주석 달아줘
전체 구조 설계부터 코드, 예외 처리까지 완성된 예시로 줘.
요거 하나면 이메일 인증 기능은 끝.
심지어 DB 설계 + 보안 고려 + UX 흐름까지 포함된 코드로 받아볼 수 있어서
진짜 MVP 만들 땐 이렇게 GPT랑 협업하는 게 최고임.
혹시 인증 다음에 2FA(구글 OTP)까지 붙이고 싶으면,
그 프롬프트도 정리해둔 거 있음. 댓글 달면 바로 뿌릴게요 😎
좋아요
0
아주 좋아요
좋아요
조금 좋아요
댓글
0
댓글 작성
더 빠르게, 더 효율적으로: 코드 최적화의 예술
코드는 작동하지만 느립니다. 사용자들이 불평하기 시작했고, 서버 비용은 계속 증가하고 있습니다. 한 개발팀은 기능 개발에...
안전과 성장, 두 마리 토끼를 잡는 투자 전략
최근 불확실한 금융 시장 속에서 ‘어떻게 하면 안전하면서도 수익을 낼 수 있을까?’ 하는 고민이 많으실 겁니다. 단순히 고수...