Next-auth에서 카카오 '간편' 로그인 구현 방법 문의

문의 시, 사용하시는 개발환경과 디벨로퍼스 앱ID를 알려주세요.


앱 ID:747129
개발환경: nextjs의 next-auth

기존에 로그인 페이지에서 next-auth의 signIn(“kakao”)를 사용하고 있습니다. 그러면 […next-auth]페이지에서

KakaoProvider({
clientId: process.env.KAKAO_CLIENT_ID as string,
clientSecret: process.env.KAKAO_CLIENT_SECRET as string,
profile: (profile) => {
return {
id: profile.id.toString(),
uid: profile.id.toString(),
name: profile.properties.nickname,
role: “newUser”,
profileImage: profile.properties.thumbnail_image || profile.properties.profile_image,
isActive: false,
email: profile.id.toString(),
};
},
}),

이런식으로 받아오고 있어요.

하지만 이렇게 하니까 '카카오 간편 로그인’이 되지 않습니다.
그렇다고 로그인 페이지에서 window.kakao.authorize()를 통해 로그인 하면,
signIn을 통하지 않기 때문에…
기존의 next-auth의 session이나 token 정보가 전달이 안되는 거 같습니다.

카카오톡앱으로 바로 로그인 시도하는 카카오톡 간편 로그인은 JS SDK authorize() 함수를 통해서만 실행 가능합니다.
카카오 계정 로그인 페이지에 진입해서 [카카오톡으로 로그인] 버튼을 클릭해도 카카오톡앱을 통해 로그인하게 됩니다.

next-auth의 signIn(“kakao”) 은 REST-API 방식 로그인이므로 직접 간편로그인을 할 수 없고 카카오 계정 로그인 페이지에 진입해서 [카카오톡으로 로그인]이나 ID/PW을 입력해 로그인해야합니다.

인가코드요청과 액세스토큰발급, 사용자 정보조회까지 세트로 구성된 next-auth의 기능을
진입만 JS SDK authorize()에서 하고 액세스 토큰 발급 부터 next-auth를 사용하는 기능은 제공하지 않습니다.

참고 부탁드려요.