728x90
❓OAuth
구글, 페이스북 등 다양한 플랫폼의 특정한 사용자 데이터에 접근하기 위해 제3자가 사용자의 접근 권한 위임을 받을 수 있는 프로토콜
.구글은 OpenID Connect 프로토콜을 통해 OAuth 2.0을 구현하고 있다.
❓OAuth 2.0
인증 및 권한 부여를 위한 개방형 표준 프로토콜로, 다양한 인터넷 서비스에서 사용되는 주요 프로토콜
사용자가 앱에 로그인 사용자 인증 정보를 증명하지 않아도 앱이 사용자의 보호된 리소스 (예: 은행 계좌 또는 사용자가 앱에서 액세스하려고 할 수 있는 기타 민감한 정보)에 제한적으로 액세스하도록 허용한다.
✨구글 소셜 로그인 Authorization Code 흐름 과정
- 사용자가 클라이언트 애플리케이션의 "구글로 로그인" 버튼을 클릭한다.
- 클라이언트 애플리케이션은 사용자를 구글 OAuth 2.0 인증 엔드포인트로 리디렉션한다. 이때 클라이언트 ID, 리디렉션 URI, 응답 유형(code) 등의 파라미터를 함께 전송한다.
- 사용자는 구글 로그인 및 동의 화면을 보게 된다.
- 사용자가 로그인하고 동의하면 구글 OAuth 2.0 프로바이더는 인가 코드(Authorization Code)를 클라이언트 애플리케이션으로 리디렉션한다.
- 클라이언트 애플리케이션은 인가 코드, 클라이언트 ID, 클라이언트 비밀번호를 사용하여 구글 OAuth 2.0 토큰 엔드포인트에 액세스 토큰 요청을 보낸다.
- 구글 OAuth 2.0 프로바이더는 이 요청을 확인하고 액세스 토큰을 발급한다.
- 클라이언트 애플리케이션은 발급받은 액세스 토큰을 사용하여 구글 사용자 정보 API를 호출한다.
- 클라이언트 애플리케이션은 사용자 정보를 받아와 자체 세션 토큰을 발급하고, 이를 사용자에게 전송한다.
- 사용자는 세션 토큰을 받아 클라이언트 애플리케이션의 메인 페이지로 리디렉션된다.
참고)
'🔥CS 뽀개기' 카테고리의 다른 글
세션 기반 인증 vs. 토큰 기반 인증 (feat. 인증+인가) (0) | 2024.06.12 |
---|---|
개발자가 SEO(검색 엔진 최적화)를 신경써야 하는 이유 (1) | 2024.06.03 |
렌더링 사형제 CSR, SSR, SSG, ISR (2) | 2024.05.28 |
웹페이지가 렌더링되는 과정 (0) | 2024.05.23 |
브라우저 주소창에 www.google.com을 입력하면 어떤 일이 일어날까? (1) | 2024.05.23 |