BESPIN Tech Blog
  • Home
  • Tech
    • CSP

      AWS

      GCP

      NCP

      Cloud

      Migration

      LZ, Control Tower

      Backup

      Monitoring

      Container

      Infra

      OS

      Middleware

      Data

      RDB

      Big Data Platform

      Application

      CI/CD

      BESPICK 구독하기 ㅣ 1668-1280

  • Trend
  • IT
최신 리포트 다운로드 지금 바로 문의하기
BESPIN Tech Blog
  • Home
  • Tech
    • CSP

      AWS

      GCP

      NCP

      Cloud

      Migration

      LZ, Control Tower

      Backup

      Monitoring

      Container

      Infra

      OS

      Middleware

      Data

      RDB

      Big Data Platform

      Application

      CI/CD

      BESPICK 구독하기 ㅣ 1668-1280

  • Trend
  • IT
최신 리포트 다운로드 지금 바로 문의하기
BESPIN Tech Blog
BESPIN Tech Blog
  • Tech
    • CSP
      • AWS
      • GCP
      • NCP
    • Cloud
      • Migration
      • LZ, Control Tower
      • Backup
      • Monitoring
      • Container
    • Infra
      • OS
      • Middleware
    • Data
      • RDB
      • Big Data Platform
    • Application
      • CI/CD
  • Trend
  • IT
  • Contact US
Site Reliability Engineering

[Server] 서버 인증 이해하기-3부 (OAuth 기본편)

by 예원 노 2022년 06월 27일
2022년 06월 27일
14

웹 서비스를 이용하면서 로그인이 필요할 때 위와 같은 로그인 창을 쉽게 찾아볼 수 있다. 해당 웹 사이트를 위한 회원가입 없이 로그인을 제공하는 플랫폼(네이버, 카카오, 페이스북 등)의 계정만 있으면 서비스를 이용할 수 있다. 이렇게 외부 서비스에서 인증을 가능하게 하고, 그 서비스의 API를 이용하게 할 수 있다. 이 때 사용되는 프로토콜이 바로 지금 살펴볼 OAuth이다.


OAuth란

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

OAuth를 쓰는 이유

1. 사용자 입장

로그인이 필요한 많은 사이트마다 계정 정보를 생성하고 제공하고 싶지 않은 입장이다.

우선 계정 정보를 관리하기 어려운 단순한 이유가 있다. 또한 개인 정보를 여러 곳에서 관리하며,

피싱에 노출되고 또한 해당 사이트가 보안적으로 안전하다는 보장이 없다는 문제가 있다.

2. 개발자 입장

회원가입/로그인 기능을 쉽게 구현할 수 있다.

네이버 로그인, 카카오 로그인, 구글 로그인 등을 통하여 해당 회원 정보를 안전하게 가져다가 사용할 수 있다고 생각하면 된다. 개발자의 사이트를 이용하는 고객들의 네이버 회원 정보를 안전하게 가져와서 쓸 수 있다.

OAuth의 시발점이 되던 시점에는 인증과 권한으로 이러한 입장들의 요구를 만족시킬 수 있는 인증 방식이 존재하지 않았고, 트위터의 주도로 OAuth1.0이 만들어지게 되었다.


OAuth1.0

구성(3-legged-auth)

– user(=사용자=Resource Owner)

– consumer(=OAuth 기능 고객=Client)

– service provider(OAuth 제공자=Authorization Server+Resource Server)

OAuth2.0 탄생 배경

구현이 복잡하고, 웹이 아닌 애플리케이션에서의 지원이 부족하다. HMAC*을 통해 암호화를 하는 복잡한 과정이 있다. 또한 Access Token이 만료되지 않는다는 치명적인 단점이 있다. Token이 만기되지 않으면, Token정보가 노출되었을 시 보안에 취약하기 때문이다.


OAuth2.0

OAuth1.0에서 나아진 점

– 기능의 단순화, 규모의 확장성 등을 지원한다.

– https를 필수로 사용하여 암호화한다.

– 2.0은 다양한 인증 방식을 지원한다.

– 인증서버와 리소스서버를 분리하였다.

구성

– Resource Owner: 로그인을 제공하는 플랫폼(네이버, 카카오, 페이스북 등)에 회원가입을 하여 계정을 가지고 있으며 Client가 제공하는 서비스를 이용하려는 사용자. Resource Server에 계정을 가지고 있는 사용자. (Resource는 개인정보라고 생각하면 된다.)

– Client: OAuth2.0을 이용해 로그인 기능을 구현할 주체 서비스이다.

– Authorization Server: 사용자의 동의를 받아서 권한을 부여하는 서버이다. 사용자는 이 서버로 ID/Password를 넘겨 인증 코드를 발급받는다. Client는 이 서버로 인증 코드를 넘겨 Access Token을 발급받는다.  

– Resource Server(API Server): 사용자의 개인정보를 가지고 있는 웹 애플리케이션(네이버, 카카오, 페이스북 등)서버이다. Client는 Access Token을 이 서버로 넘겨 개인정보를 응답받는다.


인증 유형(Authorization Grant Types)

– Authorization Code

– Implicit

– Resource Owner Password Credentials

– Client Credentials


마치며

OAuth의 기본 개념에 대해 알아보았다. OAuth2.0의 여러 유형의 상세 동작 방식과, OAuth 인증에 필수적으로 사용되는 Access Token 에 대해 알아보도록 하자.


출처

https://showerbugs.github.io/2017-11-16/OAuth-%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%BC%EA%B9%8C

https://hwannny.tistory.com/92

https://devbksheen.tistory.com/39

https://jwt.io/introduction

관련

Server인증OAuth

HOT Trend

Recent Posts

  • 딜로이트도, 맥킨지도, 베스핀글로벌도: AI 에이전트로 일 바꾸는 시대

    2025년 07월 04일 클라우드베스핀글로벌clouddata데이터AI인공지능HelpNow AIbespinglobalAI에이전트helpnow업무자동화딜로이트
  • ⚔️데이터센터에서 시작된 전쟁? 요즘 뜨는 AIDC 개념부터 트렌드까지!

    2025년 06월 27일 클라우드clouddata데이터AI데이터센터클라우드 데이터센터bespinglobalAIDCAI 인프라베스핀글로벌
  • 구글부터 엔비디아까지, 빅테크 기업들의 AI 전략 최신본📖

    2025년 06월 20일 cloud베스핀글로벌클라우드data데이터AI구글마이크로소프트엔비디아AI에이전트google I/ONVIDIA GTC 2025Microsoft build 2025
  • AI를 연결한다고? 업계가 주목하는 ‘MCP’ 알아보기🔍

    2025년 06월 13일 베스핀글로벌클라우드cloudAIMCP
  • [WhaTap] RDS Failover/Reboot 관제 2 – RDS Failover

    2025년 05월 30일 RDSRDS FailoverRebootFailoverbespin global

베스핀글로벌은 모든 기업의 AI 혁신을 실현하기 위해, 세상에서 가장 혁신적이고 자동화된 AI 서비스와 솔루션을 만들어갑니다.
상호 : 베스핀글로벌 주식회사 ㅣ 대표자명 : 김써니, 허양호 ㅣ 사업자등록증번호 : 638-87-00223 ㅣ 통신판매번호 : 2019-서울서초-0347 ㅣ 대표전화 : 1668-1280
사업장주소지 : 서울특별시 서초구 강남대로 327, 13,14,15,16층(서초동,대륭서초타워) ㅣ 이메일 : info@bespinglobal.com ㅣ 개인정보 처리방침 ㅣ 개인정보 처리방침 안내

© 2026 BESPIN GLOBAL, All Rights Reserved.

BESPINGLOBAL
패밀리 사이트
China MEA SEA US

BESPIN Tech Blog
  • Home
  • Tech
    • CSP

      AWS

      GCP

      NCP

      Cloud

      Migration

      LZ, Control Tower

      Backup

      Monitoring

      Container

      Infra

      OS

      Middleware

      Data

      RDB

      Big Data Platform

      Application

      CI/CD

      BESPICK 구독하기 ㅣ 1668-1280

  • Trend
  • IT