이메일 인증 기능도 그냥 GPT한테 맡겨

세이튜터

회원가입 만들다가 문득 생각남.
“이거 가입만 되면 뭐해. 인증도 안 되는데…” 😅

그래서 이메일 인증 흐름까지 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)까지 붙이고 싶으면,
그 프롬프트도 정리해둔 거 있음. 댓글 달면 바로 뿌릴게요 😎

댓글 쓰기

    반복 작업으로 날 새던 파이썬 스크립트 GPT로 10분 컷

    개발자분들이라면 공감하실 겁니다. 단순하지만 은근히 귀찮고 반복적인 파이썬 스크립트 작업들… 로그 파일 정리, CSV 전처...

    나도 이제는 데이터 분석!! 전문가?

    데이터 분석이란 말만 들어도 뭔가 복잡하고 어려울 것 같지 않나요? 저도 처음엔 엑셀 함수 하나 쓰는 것도 버벅거리고...

    기술

    공지

    📢[필독] GPT 프롬프트 커뮤니티 이용 가이드

    📢[필독] GPT 프롬프트 커뮤니티 이용 가이드

    공유

    나도 이제는 데이터 분석!! 전문가?

    공유

    서버 에러 발생 시 해결 방안 찾는 지피티 프롬프

    공유

    코드 구조 잡는 데만 반나절 걸리던 개발 업무 GPT로 30분 컷

    공유

    반복 작업으로 날 새던 파이썬 스크립트 GPT로 10분 컷

    공유

    API 응답 처리도 프롬프트 하나로

    공유

    로그인 인증 설계, 하루 잡아먹었는데 GPT 덕분에 퇴근이 빨라졌어요

    공유

    개발할 때 cursor 커서 사용했는데 너무 편합니다. 자동 개발 시작.

    공유

    로그인 방식이 달라도 결국은 하나의 계정인듯

    공유

    OTP 인증, 진짜 서비스에 붙일 땐 이렇게 짰습니다

    공유

    이메일 인증 기능도 그냥 GPT한테 맡겨

    공유

    Next.js + Prisma로 이메일 인증 기능 구현하는 법

    공유

    비밀번호 재설정도, GPT가 설계부터 같이 해줘요

    공유

    구글 로그인, 직접 안 짜도 되는 프롬프트 모음

    공유

    로그인 계속 유지되게 하고 싶을 때, 이렇게 물어봐요