[Web] OAuth



OAuth 란? (Open Authorization)

외부 서비스 의 인증 및 권한부여를 관리하는 범용적인 프로토콜

OAuth가 사용되기 전에는 인증방식의 표준이 없었기 때문에 기존의 기본인증인 아이디와 비밀번호를 사용하였는데, 이는 보안상 취약한 구조이다.

OAuth는 이렇게 제각각인 인증방식을 표준화한 인증방식

세션/쿠키, 토큰 기반 인증방식을 완전히 대체하는 것이 아니다.

OAuth 2.0

2007년 처음으로 OAuth 1.0의 초안이 발표되었다. 그러나 점점 커져가는 네트워크 시장에서 한계가 나타나 2012년에 OAuth 2.0이 생김.

OAuth 2.0에서 크게 바뀐 점

  1. 모바일 어플리케이션에서도 사용이 용이해짐.
  2. 반드시 HTTPS를 사용하기에 보안이 강화됨.
  3. Access Token의 만료기간이 생김

OAuth 2.0의 인증 방식

  1. Authorization Code Grant
  2. Implicit Grant
  3. Resource Owner Password Credentials Grant
  4. Client Credentials Grant

참고 문서

https://tansfil.tistory.com/60?category=255594