본문 바로가기

Spring/Security

OAuth2를 이용한 소셜 로그인 - 카카오 API

1. 필요성

1) 모든 웹 사이트에서 회원 가입 과정을 거치며  웹사이트마다 다른 아이디와 비밀번호를 기억해하므로 사용자에게 부담이 됨

2) 웹사이트 운영측에서도 회원들의 개인정보를 지켜야 하기때문에 보안 강화를 위한 노력이 지속적으로 필요하게됨

3) 이런 문제를 해결하기 위해  OAuth를 사용한 소셜 로그인 등장!!

 

 

2. OAuth

- 인터넷 사용자들이 비밀번호를 제공하지 않고 다른 웹사이트 상의 자신들의 정보에 대해 웹사이트나 애플리케이션의 접근 권한을 부여할 수 있는 공통적인 수단으로서 사용되는 접근 위임을 위한 개방형 표준

 

- 사용자가 애플리케이션에게 모든 권한을 넘기지 않고 사용자 대신 서비스를 이용할 수 있게 해주는 HTTP 기반의 보안 프로토콜  OAuth를 사용하는 서비스 제공자는 대표적으로 구글, 페이스북 등이 있음

 

- 국내에는 대표적으로 네이버와 카카오가 있음

 

 

3. 카카오 소셜 로그인 

 

1) 카카오 소셜 로그인 흐름

카카오 로그인 흐름

 

2) 카카오 로그인 사용 승인 받기

- 카카오 개발 사이트에서 '애플리케이션 등록'이 필요

- 회원가입을 진행하고 나만의 애플리케이션 등록하기

 

https://developers.kakao.com/console/app

 

카카오계정

 

accounts.kakao.com

 

 

3) 회원가입

 

 

4) 내 애플리케이션 메뉴 선택 > 애플리케이션 추가하기

 

5) 앱 아이콘, 앱 이름, 사업자명 저장

6) 사이트 도메인 등록하기: 애플리케이션 선택  / 플랫폼 메뉴 선택 / Web 플랫폼 등록 / 사이트 도메인 입력

 

 

7) 카카오로 로그인 했을 때 인가토큰을 받게 될 Redirect URI (callback) 설정

 

 

8) 동의항목 설정하기: 내 어플리케이션에서 필요한 카카오 사용자 정보 정하기

카카오 인가코드 받기

https://kauth.kakao.com/oauth/authorize?client_id={REST_API_KEY}&redirect_uri={REDIRECT_URI}&response_type=code