OAuth

초콜렛빵·2023년 9월 5일
0

TIL

목록 보기
23/27

OAuth

OAuth란?

  • 인터넷 사용자들이 비밀번호를 제공하지 않고, 자신의 정보에 대해 웹사이트나 애플리케이션의 접근 권한을 부여할 수 있는 공통적인 수단으로 사용되는 접근 위임을 위한 개방형 표준
  • 즉, 로그인 및 개인정보 관리 책임을 3rd party 에 위임하여 동작하도록 하는 것
  • 이를 통해 ID/PW 사용 시 보안상 취약한 요소 제거

OAuth2?

  • OAuth2는 기능의 단순화 기능과 규모의 확장성을 지원하기 위해 만들어짐
    • OAuth1에서는 구현의 복잡함과 HMAC를 통한 암호화의 번거로움, 인증토큰 만료가 되지 않는 등의 문제
  • https 를 통해 암호화 하여 과정의 단수화
  • 다양한 인증 방식 제공
  • API 서버를 인증서버와 리소스서버로 분리

구성 요소

Resource Owner

  • 웹 서비스를 이용하려는 유저, 자원(개인정보) 소유자, 사용자

Client

  • Resource server에 필요 자원을 요청하는 애플리케이션 서버

Authorization Server

  • 권한 부여하는 서버
  • Resource Owner는 ID/PW를 통해 Authorization Code 발급
  • Client 는 Authorization Code를 통해 Token 발급

Resource Server

  • 사용자(Resource Owner)가 가지고 있는 애플리케이션 회사 서버

Access Token

  • 자원에 대해 접근 권한이 인가 되었음을 나타내는 자격증명 토큰

Refresh Token

  • Access Token이 만료기간이 다되면 이 토큰을 이용해 Access Token을 재발급 받음
  • ID/PW를 통해 재발급받지 않도록 함
출처: Payco 개발자 센터
profile
차근차근 기록하고 배우는 개발자

0개의 댓글