From 66538d0d64d771eca5aa778da1d19591f55681af Mon Sep 17 00:00:00 2001 From: koreacomp5 Date: Thu, 9 Oct 2025 15:05:33 +0900 Subject: [PATCH] =?UTF-8?q?=EC=9D=B4=EB=A9=94=EC=9D=BC=20=EA=B4=80?= =?UTF-8?q?=EB=A0=A8=20=EB=82=B4=EC=9A=A9=20=EC=A0=9C=EA=B1=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- projectmemo.txt | 2 +- src/app/api/auth/password/reset/request/route.ts | 1 - todolist.txt | 2 +- 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/projectmemo.txt b/projectmemo.txt index e074f33..a0ed70d 100644 --- a/projectmemo.txt +++ b/projectmemo.txt @@ -10,7 +10,7 @@ 3. 이메일/비밀번호 기반 로그인 처리(성공/실패/락아웃/재시도) 4. 세션/쿠키 설정(HttpOnly, Secure, SameSite), 토큰 저장 전략 확정 5. 보호 라우팅(미들웨어)과 인증 가드 구현, 비인증 접근 차단 -6. 비밀번호 재설정 토큰 발급/검증/만료 처리, 이메일 발송 +6. 비밀번호 재설정 토큰 발급/검증/만료 처리 7. 보안 강화(CSRF 방어, 레이트 리밋, 감사 로그) diff --git a/src/app/api/auth/password/reset/request/route.ts b/src/app/api/auth/password/reset/request/route.ts index 530816d..17ef880 100644 --- a/src/app/api/auth/password/reset/request/route.ts +++ b/src/app/api/auth/password/reset/request/route.ts @@ -12,7 +12,6 @@ export async function POST(req: Request) { await prisma.passwordResetToken.create({ data: { userId: user.userId, token, expiresAt }, }); - // 실제로는 이메일 발송 필요. 여기선 토큰을 반환(데모) return NextResponse.json({ ok: true, token }); } diff --git a/todolist.txt b/todolist.txt index 2919241..f3a98bd 100644 --- a/todolist.txt +++ b/todolist.txt @@ -16,7 +16,7 @@ 3.1 로그인/가입 폼 검증(Zod) 및 오류 UX o 3.2 비밀번호 해시/검증 로직(bcrypt) 적용 o 3.3 세션/쿠키(HttpOnly/SameSite/Secure) 및 토큰 저장 전략 o -3.4 비밀번호 재설정 토큰 발급/검증/만료 및 이메일 발송 o +3.4 비밀번호 재설정 토큰 발급/검증/만료 o 3.5 보호 라우팅 미들웨어 및 인증 가드 3.6 로그인 시도 레이트리밋(정책은 보안/정책 참조)