인증은 Provider보다 세션 위치와 서버 보호 경계를 먼저 정한다

로그인 버튼만 붙이는 문제가 아니다. Server Component에서 세션을 읽고, Proxy에서 진입을 선별하며, Server Action과 Route Handler에서 권한을 다시 확인한다.

결정 항목Auth.js에서 보는 것Next.js 연결 지점주의할 점
로그인 방식OAuth Provider, CredentialsAuth.js handlers, callback URLProvider callback URL과 AUTH_* 환경 변수의 정합성
세션 전략JWT 또는 Database Sessionauth(), jwt/session callbacks쿠키 크기, 만료, 서버 조회 비용
페이지 보호authorized callbackproxy.ts matcher정적 자산과 공개 페이지를 잘못 막지 않기
서버 데이터 접근auth()Server Component, Server Action, Route Handler클라이언트 세션만 믿고 서버 권한을 생략하지 않기
운영 추적events, loggerRuntime Logs, monitoring인증 실패 이유와 개인정보 노출을 분리