Zitadel Provider
리소스
설정
콜백 URL
https://example.com/api/auth/callback/zitadel
환경 변수
AUTH_ZITADEL_ID
AUTH_ZITADEL_SECRET
설정
/auth.ts
import NextAuth from "next-auth"
import Zitadel from "next-auth/providers/zitadel"
export const { handlers, auth, signIn, signOut } = NextAuth({
providers: [Zitadel],
})
참고 사항
자격 증명을 생성할 때 사용하는 리다이렉트 URI는 전체 도메인을 포함하고 콜백 경로로 끝나야 합니다. 예를 들어:
- 프로덕션 환경:
https://{YOUR_DOMAIN}/api/auth/callback/zitadel
- 개발 환경:
http://localhost:3000/api/auth/callback/zitadel
로컬 개발을 위해 리다이렉트를 허용하려면 ZITADEL 콘솔에서 개발자 모드를 활성화해야 합니다.
ZITADEL은 프로필에 email_verified
라는 불리언 속성을 반환합니다. 이 속성을 사용하여 인증된 계정을 가진 사용자만 접근할 수 있도록 제한할 수 있습니다.
const options = {
...
callbacks: {
async signIn({ account, profile }) {
if (account.provider === "zitadel") {
return profile.email_verified;
}
return true; // `email_verified`가 없는 다른 프로바이더에 대해서는 다른 검증을 수행
},
}
...
}