ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [SpringBoot] - 소셜로그인작동 원리
    Spring 2024. 7. 22. 23:53
    반응형

    소셜 로그인 동작 원리

    +-----------------+        +------------------------+        +------------------+
    |                 |        |                        |        |                  |
    |     사용자      |        |    애플리케이션        |        |  소셜 로그인 제공자 |
    |                 |        |                        |        |   (예: Google)   |
    +--------+--------+        +-----------+------------+        +--------+---------+
             |                             |                            |
             | 1. 로그인 버튼 클릭          |                            |
             |---------------------------->|                            |
             |                             |                            |
             |                             | 2. 인증 요청               |
             |                             |--------------------------->|
             |                             |                            |
             |                             |                            | 3. 사용자 로그인 및 승인
             |                             |                            |<---------------------------|
             |                             |                            |
             |                             | 4. 인증 코드 수신          |
             |                             |<---------------------------|
             |                             |                            |
             |                             | 5. 인증 코드 교환          |
             |                             |---------------------------->
             |                             |                            |
             |                             | 6. 액세스 토큰 수신        |
             |                             |<---------------------------|
             |                             |                            |
             |                             | 7. 사용자 정보 요청        |
             |                             |---------------------------->
             |                             |                            |
             |                             | 8. 사용자 정보 수신        |
             |                             |<---------------------------|
             |                             |                            |
             | 9. 사용자 로그인 완료        |                            |
             |<----------------------------|                            |
             |                             |                            |
    +--------+--------+        +-----------+------------+        +--------+---------+
    |                 |        |                        |        |                  |
    |     사용자      |        |    애플리케이션        |        |  소셜 로그인 제공자 |
    |                 |        |                        |        |   (예: Google)   |
    +-----------------+        +------------------------+        +------------------+
    1. 사용자 로그인 요청: 사용자가 웹사이트나 애플리케이션에서 "소셜 로그인" 버튼을 클릭합니다 (예: "Login with Google", "Login with Facebook").
    2. 인증 요청: 애플리케이션은 소셜 로그인 제공자(예: Google, Facebook, Naver)에게 인증을 요청합니다. 이 요청에는 애플리케이션의 클라이언트 ID, 리다이렉트 URI 등이 포함됩니다.
    3. 사용자 승인: 사용자는 소셜 로그인 제공자의 로그인 페이지로 리디렉션됩니다. 사용자는 자신의 소셜 미디어 계정으로 로그인하고 애플리케이션이 자신의 정보에 접근하는 것을 승인합니다.
    4. 인증 코드 수신: 소셜 로그인 제공자는 인증 코드와 함께 사용자를 애플리케이션의 리다이렉트 URI로 리디렉션합니다.
    5. 인증 코드 교환: 애플리케이션은 인증 코드를 사용하여 소셜 로그인 제공자에게 액세스 토큰을 요청합니다. 이 요청에는 애플리케이션의 클라이언트 시크릿도 포함됩니다.
    6. 액세스 토큰 수신: 소셜 로그인 제공자는 액세스 토큰을 애플리케이션에 반환합니다. 이 토큰은 사용자의 리소스에 접근하는 데 사용됩니다.
    7. 사용자 정보 요청: 애플리케이션은 액세스 토큰을 사용하여 소셜 로그인 제공자에게 사용자 정보를 요청합니다.
    8. 사용자 정보 수신: 소셜 로그인 제공자는 사용자 정보를 애플리케이션에 반환합니다.
    9. 사용자 로그인 완료: 애플리케이션은 반환된 사용자 정보를 사용하여 사용자를 로그인 상태로 설정하고, 필요한 경우 새로운 사용자 계정을 생성합니다.

     

    반응형

    댓글

Designed by Tistory.