OAuth란?

Walker·2021년 5월 2일
0

OAuth

목록 보기
1/4
post-thumbnail

새롭게 Oauth라는 키워드를 알게되어 한번 잘 정리하고
나중에 포트폴리오 회원가입/로그인 기능에도 적용해보자는 생각으로 포스팅을 남긴다.
(생활코딩 egoing님의 OAuth 2.0 강의 - https://opentutorials.org/module/3668
를 정리한 글 입니다.(egoing님 감사합니다!))


먼저 예시를 설명하자면 UserMine(opentutorials.org) 서비스를 활용하면서
Their(Google, Facebook)의 User Data나 API를 사용해야 하는 상황이다.

여기에서 가장 단순한 방법은 MineID, PW를 제공하고
이를 Their에 전달하여 마치 User가 Their에도 로그인 한 것처럼 사용 방법이 있다.


그러나 이 방법은 크게 2가지가 문제 될 수 있다.

  1. "Mine을 어떻게 믿고 내 ID/PW를 입력하는가?"
    만약 Mine이 내 포트폴리오와 같은 비공식적인(?) 사이트라면
    거기에 다른 사이트도 쓰는 공통 ID/PW를 제공하는 것은 매우 위험하다.
  2. Mine 입장에서도 ID/PW와 같은 민감정보를 사용/보관하는 것은 책임이 따른다.

이러한 문제를 해결하기 위해 등장한 것이 OAuth이다.
OAuth는 'Mine''Their' 간에
더 안전하고 덜 부담스럽게 상호작용 할 수 있도록 돕는 표준 Protocol이다.


결국 OAuth에서 중요한 것은 ID/PW외에 User를 식별
'다른 정보'를 사용하는 것이고 이러한 것이 AccessToken이라 할 수 있다.
AccessToken은 또 다른 장점은 전체 기능을 Open하는 ID/PW에 비해
발급할 때 일부 기능 만을 Open하는 것으로 설정 할 수 있다는 것이다.(보안성 향상)

그러면 다음 글에서는 구체적으로 AccessToken을 어떻게 얻어내고 또 사용하는지 알아보자!

profile
I walk slowly, but I never walk backward. -Abraham Lincoln-

0개의 댓글