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

댓글 쓰기

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

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

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

    Next.js 프로젝트에서 사용자 로그인 상태를 유지하는 기능, 처음부터 직접 짜려면 은근히 복잡하잖아요. JWT를 활용하면서도...

    기술

    공지

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

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

    공유

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

    공유

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

    공유

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

    공유

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

    공유

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

    공유

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

    공유

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

    공유

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

    공유

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

    공유

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

    공유

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

    공유

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

    공유

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

    공유

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