OAuth 2.0

NANA·2023년 7월 25일
0

avaya breeze snap-in 개발을 위해 관련 문서를 보면서 학습 중.
AS(Authorization Server)

OAuth란?

https://ko.wikipedia.org/wiki/OAuth

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

OAuth 2.0이 정의하는 4가지 역할

  1. Resource Owner (보통 최종 사용자)
  2. Resource Server (리소스를 보호하는 hosts)
  3. Client (리소스 리퀘스트를 만드는 어플리케이션) ::: Server-based와 end-user device 양쪽에서 다 클라이언트로 사용됨
  4. Authorization Server
  • 어플리케이션 권한 인증
  • 사용자 권한 인증
  • 클라이언트 -> 리소스 서버 요청 권한 인증

OAuth 2.0은 클라이언트가 액세스 토큰을 요청하는 데 사용할 수 있는 네 가지 권한 유형을 정의
AS는 이 중 세 개를 지원.

  1. Client Credentioals Grant Type
    클라이언트에게만 권한을 주는 것. 특정 사용자를 대신하지 않는 서버 기반 어플리케이션에 적합.
  2. Authorization Code Grant Type
  • 클라이언트-사용자 둘 다에게 권한을 줌. redirect-based flow.
  • 어플리케이션이 사용자의 사용 증명을 처리하는 대신 사용자의 브라우저를 AS로 리다이렉팅 한다.
  • 사용자의 증명이 AS에 의해 인증되면, AS는 브라우저를 권한 코드와 함께 다시 어플리케이션으로 리 다이렉팅. 이 코드는 access token으로 이 코드를 교환한다.
  • SMAL-based 권한 인증 방식으로, Multi-Factor Authentication을 포함한다. (다중 인증, 최소 두 가지 이상의 인증 요소를 이용하여 본인 여부를 인증하는 것.)

출처 : https://www.oracle.com/kr/security/cloud-security/what-is-saml/
SAML(보안 검증 마크업 언어)은 ID 제공자(IdP)가 사용자를 인증한 다음 SP(서비스 제공자)라고 하는 다른 애플리케이션에 인증 토큰을 전달할 수 있는 공개 통합 표준입니다. SAML을 사용하면 자체 인증을 수행하지 않고도 SP가 작업을 수행하고 ID를 전달하여 내부 및 외부 사용자를 통합할 수 있습니다.

LDAP

LDAP(Lightweight Directory Access Protocol)이란 네트워크상에서 조직이나 개인, 파일, 디바이스 등을 찾아볼 수 있게 해주는 소프트웨어 프로토콜입니다. LDAP은 OSI 계층 전체가 아닌 TCP/IP 위에서 운용되고 DAP의 스펙을 최대한 유지하면서도 경량화해 네트워크 부담을 줄이도록 설계되었습니다.

  1. Resource Owner Password Credentials Grant Type
  • 클라이언트-사용자 둘 다 권한 가짐
  • 1번보다 간단한데 제한적임.
profile
일단 나만 알아보면 된다는 마음으로, 작더라도 꾸준히

0개의 댓글