
✅ NextAuth란?
Next.js에서 authentication 구현을 도와주는 패키지
유저의 로그인 여부를 알려주는 hook이랑 function을 제공
✅ 사용법
설치
npm i next-auth
파일 생성
pages/api/auth/[...nextauth].js 파일 생성
예시 코드
import NextAuth from "next-auth"
import GithubProvider from "next-auth/providers/github"
export const authOptions = {
// Configure one or more authentication providers
providers: [
GithubProvider({
clientId: process.env.GITHUB_ID,
clientSecret: process.env.GITHUB_SECRET,
}),
// ...add more providers here
],
}
export default NextAuth(authOptions)
providers는 소셜 로그인 플랫폼을 뜻한다.
GithubProvider를 작성하면 자동으로 Github 소셜 로그인 버튼을 만들어준다.
✅ NextAuth를 prisma 데이터베이스랑 같이 사용하려면?
prisma에 맞게 몇 가지 수정을 해줘야 한다.
NextAuth에게 PrismaAdapter를 제공해야 한다.
예시
export default NextAuth({
adapter: PrismaAdapter(prisma),
providers: [
~~~~~
]
})
그리고 schema를 상당히 많이 바꿔야 한다.(prisma schema)
model Account, model Session, model User, model VerificationToken을 문서에 맞게 작성해줘야 한다.
'📂 라이브러리' 카테고리의 다른 글
| 라이브러리 - TanStack Query(React Query) (0) | 2026.02.03 |
|---|---|
| 라이브러리 - Zod (0) | 2025.12.03 |
| 라이브러리 - SWR (0) | 2025.07.05 |
| 라이브러리 - Iron Session (0) | 2025.07.04 |
| 라이브러리 - React Hook Form (2) | 2025.05.27 |