Kakao Login

youngkyu MIn·2023년 10월 16일

1 로그인 요청: 사용자가 애플리케이션에서 카카오 로그인 버튼을 클릭한다.

2 리다이렉션: Spring Security는 사용자를 카카오 인증 서버의 로그인 페이지로 리다이렉트한다.

3 카카오 로그인: 사용자는 카카오 로그인 페이지에서 자신의 아이디와 비밀번호로 로그인한다.

4 인증 코드 발급: 로그인이 성공하면, 카카오는 사용자를 애플리케이션으로 다시 리다이렉트한다. 이 때 URL에 'code'라는 인증 코드가 함께 전달된다.

5 토큰 요청: 애플리케이션 서버는 이 인증 코드를 사용하여 카카오 토큰 서버에 엑세스 토큰을 요청한다.

6 엑세스 토큰 발급: 카카오는 인증 코드를 확인하고 유효하다면 엑세스 토큰을 애플리케이션에 발급한다.

7 사용자 정보 요청: 애플리케이션은 엑세스 토큰을 사용하여 카카오에 사용자 정보를 요청한다.

8 사용자 정보 저장 및 인증: 애플리케이션은 받은 사용자 정보를 기반으로 사용자를 인증하고, 필요하다면 사용자 정보를 애플리케이션 DB에 저장한다.

9 세션 생성: Spring Security는 사용자를 위한 세션을 생성하고, 이를 통해 사용자의 로그인 상태를 유지한다.



DefaultOAuth2UserService - OAuth2 로그인 프로세스 중에서 사용자 정보를 로드할 때 호출

1 사용자 정보 요청: 애플리케이션은 엑세스 토큰을 사용하여 카카오에 사용자 정보를 요청한다.
즉, 엑세스 토큰을 받은 후 해당 토큰을 사용해서 제공자(카카오)로부터 사용자 정보를 가져올 때 CustomOAuth2UserService는 호출된다.

CustomOAuth2UserService는 주로 다음과 같은 작업들을 수행하는데 사용된다:

1 제공자로부터 반환받은 사용자 정보를 파싱한다.
2 필요한 경우 추가적인 사용자 정보 변환 또는 매핑 작업을 수행한다.
3 애플리케이션의 데이터베이스와 연동하여 사용자 정보를 저장하거나 업데이트한다.
4 사용자의 권한, 속성 등을 설정하여 Spring Security Context에 설정한다.

profile
한 줄 소개

0개의 댓글