Next Auth OAuth 추가하기

no-pla·2024년 5월 7일
0

TIL

목록 보기
8/14
post-thumbnail
post-custom-banner

프로젝트에 OAuth를 추가해 보기로 했다. 이전까지는 Firebase Authentication만 사용했기 때문에, 한국에서 자주 사용되는 OAuth(e.g, 네이버, 카카오)를 사용하려면 따로 설정을 해주어야 했다. 그러나 Next Auth를 사용하면 간단한 설정만으로 OAuth를 사용할 수 있다.

OAuth 추가하기

    NaverProvider({
      clientId: process.env.NAVER_CLIENT_ID!,
      clientSecret: process.env.NAVER_CLIENT_SECRET!,
      allowDangerousEmailAccountLinking: true,
    }),

OAuth를 추가하는 방법은 위와 같다. 제공되는 업체 별 Provider에 필요한 API key 값을 전달해 주면 된다. 너무 쉽다.

allowDangerousEmailAccountLinking

계정 자동 연결의 위험성에 대한 설명

다른 사이트를 이용하다보면, 이미 이메일로 가입한 사이트를 같은 이메일을 사용하는 OAuth를 통해 로그인하면 자동으로 연동이 되는 경우가 많다. 내 경우도 자동으로 이미 존재하는 계정으로 연동하려고 했으나, Next-Auth는 해당 기능을 기본적으로 제공하지 않는다.

악의적인 사용자가 특정 계정을 탈취하기 위해 같은 이메일로 계정을 생성한 뒤에, 다른 사람의 계정에 접근할 수도 있기 때문이다. 따라서 해당 기능을 기본적으로 제공하지 않으나, allowDangerousEmailAccountLinking 옵션을 true로 설정하면 같은 이메일을 사용하는 계정들을 연동할 수 있다.

해당 기능에 대한 토론 스레드

계정들을 자동으로 연결되는 기능이 위험하다고는 하나, 위의 스레드에서 언급된 것처럼 대부분의 잘 알려진 OAuth는 기본적으로 따로 인증 절차를 거치기 때문에, 안전하다고 볼 수 있다.

post-custom-banner

0개의 댓글