OAuth

이태곤·2024년 2월 4일
0

CS

목록 보기
17/23

인증 흐름 순서

  1. 사용자가 클라이언트에 로그인을 요청
  2. 클라이언트는 사용자를 OAuth 서비스로 리다이렉트
  3. 사용자가 OAuth 서버에서 인증을 하면, 인증 서버는 클라이언트에게 Authorization Code를 Redirect URL에 쿼리 파라미터 형태로 포함시켜 리다이렉트
  4. 클라이언트는 Authorization Code와 함께 Client Secret을 사용하여 서버에 Access Token을 요청
  5. 서버는 해당 Authorization Code를 가지고 인증 서버로부터 검증 후에 Access Token을 발급 받아 클라이언트에게 전달
  6. 클라이언트는 Access Token을 사용하여 사용자를 대신해 서버에 자원을 요청
  • 우리가 사용하게 될 Authentication 과정
    1. 사용자가 로그인 버튼 클릭
    2. 현대차 홈페이지로 리다이렉트하여 로그인
    3. 로그인 성공 시, 인증 코드(code) 발급 및 클라이언트 사이트로 리다이렉트
    4. 클라이언트 사이트에서 인증 코드를 사용하여 리소스 서버에 토큰 요청
    5. 토큰 발급 받은 후, 사용자를 클라이언트 사이트의 홈 화면으로 이동

Client Secret

  • client_secret은 OAuth 등록 과정에서 클라이언트에게 부여되는 비밀 키

Token 요청

  • Authorization Code를 사용하여 Access Token을 요청할 때는 일반적으로 POST 요청을 사용
  • 요청 본문에는 grant_type, code, redirect_uri, client_id, client_secret을 포함

Redirect URI

  • OAuth 인증 과정 중 인증 코드를 리다이렉트하기 위한 URL
  • 토큰을 요청할 때, 이전에 인증 코드를 받았던 redirect_uri와 일치하는지 서버가 검증

Access Token 응답

  • 리소스 서버가 유효한 코드로 인증을 성공하면, 클라이언트에게 access_token, token_type, expires_in, refresh_token을 포함한 JSON 객체를 반환

0개의 댓글