Oauth

이준교·2023년 7월 2일
0
post-thumbnail

Oauth 란?

OAuth는 인터넷 사용자들이 비밀번호를 제공하지 않고 다른 웹사이트 상의 자신들의 정보에 대해 웹사이트나 애플리케이션의 접근 권한을 부여할 수 있는 공통적인 수단으로서 사용되는, 접근 위임을 위한 개방형 표준이다. (위키백과)

즉, 우리가 흔히 사용하는 구글, 페이스북 로그인 과같은 외부 소셜 계정을 기반으로 로그인을 진행할 때 사용되는 프로토콜이 Oauth이다.

구성요소

  • Resource Owner
    웹 서비스를 이용하려는 유저, 자원을 소유하는 사용자
    클라이언트가 제공하는 서비스를 통해 로그인하는 실제 유저

  • Resource Server
    사용자의 개인정보를 가지고 있는 애플리케이션 서버
    Facebook, google 등 이 해당

  • Client
    Resource Server에 접속해서 정보를 가져오고자 하는 클라이언트
    자사 또는 개인이 만든 애플리케이션 서버

Oauth의 기본적인 동작 과정

Oauth의 장단점은?

장점

  • 별도의 회원가입등 없이 유저가 쉽게 접근할 수 있는 편의성을 제공
  • Resource Server와의 연동이 편해진다

단점

  • 단순 회원가입, 로그인을 구현하는 과정에 비해 복잡할 수 있다.
  • Resource Server 에 따라 오히려 로그인 과정이 복잡해 지는 경우가 생길 수 있으며 경우에 따라
    기존 애플리케이션에 영향을 줄 수 있음
    (별도의 2차인증 요구등, 혹은 Server의 서비스 종료나 정책 변경등)

결국 Oauth라는 표준화된 프로토콜이 있지만 연동되는 Server에 따라 그 구현 과정등은 상이할 수 있어 계획 단계에서 충분히 고려하여 사용 여부를 결정해야할 것 같다

profile
어떻게든 해내는 개발자, 이준교입니다

0개의 댓글