용어와 정의
영문 또는 원어: OAuth
한글명: OAuth 권한 위임 프레임워크
OAuth는 자원 소유자의 권한을 정해진 범위에서 다른 클라이언트에 위임하기 위한 권한 부여 프레임워크입니다.
정확한 의미와 원리
클라이언트가 자원 서버에 접근할 때 액세스 토큰을 사용하도록 합니다. 사용자의 비밀번호를 제삼자 앱에 직접 알려주는 방식과 권한 위임을 분리합니다.
쉽게 이해하는 사용 예시
일정 앱이 사용자가 허용한 일정 읽기 범위로 API에 접근하도록 승인받는 경우입니다. 이 설명은 특정 사이트의 설정을 바꾸는 절차가 아닙니다.
종류와 관련 개념의 차이
OAuth 2.0은 권한 위임을 다루며 사용자의 로그인 신원 표현에는 OpenID Connect 같은 추가 규격이 쓰입니다. 권한 부여 코드와 PKCE, 액세스 토큰과 갱신 토큰은 서로 다른 역할입니다.
적용 조건과 오해하기 쉬운 점
OAuth를 사용했다는 이유만으로 안전한 로그인이나 최소 권한이 자동 보장되지는 않습니다. RFC 9700의 보안 권고와 리디렉션, 토큰 저장 및 취소 조건을 함께 확인합니다.
OAuth 2.0 OAuth 2.0 권한 위임
이 절의 용어: OAuth 2.0 / OAuth 2.0 권한 위임
OAuth 2.0은 클라이언트에 자원 접근 권한을 위임하기 위한 프레임워크입니다. 흐름에 따라 승인과 토큰 전달 방식이 다릅니다. 초기 규격의 모든 흐름을 현재도 같은 수준으로 권장하는 것은 아니며 RFC 9700의 보안 권고와 구현 조건을 함께 적용해야 합니다.
PKCE 권한 부여 코드 교환 증명
이 절의 용어: PKCE / Proof Key for Code Exchange / 권한 부여 코드 교환 증명
PKCE는 권한 부여 코드를 요청한 클라이언트가 코드 교환 시 그 요청과 연결된 증명을 제시하도록 하는 방식입니다. 가로챈 코드만으로 토큰을 얻는 공격의 위험을 줄이는 데 사용합니다. 리디렉션 검증이나 안전한 토큰 저장을 대신하는 기능은 아닙니다.
Access token 액세스 토큰
이 절의 용어: Access token / 액세스 토큰
액세스 토큰은 클라이언트가 허용된 자원 접근에 사용하는 자격 정보입니다. 수신 대상, 권한 범위와 유효 기간의 조건을 자원 서버가 검증해야 합니다. 토큰의 모양이 JWT라고 해서 서명 검증이나 최종 작업 권한 검사를 생략할 수는 없습니다.
Refresh token 갱신 토큰
이 절의 용어: Refresh token / 갱신 토큰
갱신 토큰은 인증 서버에서 새 액세스 토큰 등을 받는 데 사용하는 자격 정보입니다. 일반 API에 액세스 토큰 대신 보내는 값과는 역할이 다릅니다. 보관, 회전과 재사용 탐지 및 취소 정책에 따라 탈취 시의 영향이 달라집니다.
관련 기술의 동작과 사용 예시
토큰 문자열을 가진 것만으로 사용하는 방식과 달리 요청에 대한 키 소유 증명을 확인해 토큰 재사용 위험을 줄입니다. 서버는 단순히 증명 헤더의 존재만 보는 것이 아니라 명세에 맞는 검증을 수행해야 합니다.
토큰 문자열만 다른 곳으로 유출된 경우 해당 키가 없는 주체의 사용을 제한하는 데 도움이 됩니다. 키까지 함께 탈취됐거나 허용된 실행 환경이 악용되는 상황을 모두 해결하는 것은 아닙니다.
종류와 적용 조건의 구분
DPoP는 사용자 로그인 방식이나 OAuth의 모든 권한 정책을 대체하지 않습니다. TLS, 대상 리소스와 범위의 확인 및 토큰의 수명 관리와 함께 적용합니다.
요청 대상과 방식 및 최신성과 재사용 조건을 확인합니다. 클라이언트와 인증 서버 및 리소스 서버의 지원을 갖추지 않고 옵션 하나만 바꾸어 효과를 보장하지 않습니다.
DPoP 소유 증명 기반 토큰 제약
이 절의 용어: DPoP / Demonstrating Proof of Possession / 소유 증명 기반 토큰 제약
DPoP는 OAuth 토큰을 특정 공개키와 연결하고 사용 시 대응하는 비밀키의 소유를 증명하도록 하는 메커니즘입니다. RFC 9449에서 정의하며 유출된 토큰만으로 다른 주체가 사용하는 위험을 줄이는 데 관계합니다. DPoP 자체는 클라이언트 인증 방식이나 HTTPS의 대체가 아닙니다. 토큰 발급자와 자원 서버가 필요한 키 바인딩 및 요청 증명 검사를 실제로 수행해야 보호가 적용됩니다.
관련 기술의 공식 참고 자료
관련 용어와 글
함께 이해할 기준 개념
함께 비교할 용어
- Authorization 권한 부여
- Identification 식별
- IAM 신원 및 접근 관리
- Least privilege 최소 권한
- RBAC 역할 기반 접근 제어
- ABAC 속성 기반 접근 제어
- MFA 다중 요소 인증
- OTP 일회용 비밀번호
- Passkey 패스키
- SSO 단일 로그인
- PAM 특권 접근 관리
- OIDC 오픈아이디 커넥트
- SAML 보안 검증 마크업 언어
- Kerberos 커버로스 인증
- Session 세션
- Identity proofing 신원 확인
- Service account 서비스 계정
- 2FA 두 요소 인증
- HOTP 계수기 기반 일회용 비밀번호
- TOTP 시간 기반 일회용 비밀번호
- FIDO2 FIDO2 인증 체계
- WebAuthn 웹 공개키 인증 API
- OAuth 2.0 OAuth 2.0 권한 위임
- PKCE 권한 부여 코드 교환 증명
- Access token 액세스 토큰
- Refresh token 갱신 토큰
- ID token 인증 결과 토큰
- SAML 2.0 SAML 버전 2.0
- TGT 티켓 발급용 티켓
- MCP 모델 컨텍스트 프로토콜
- LLM 대규모 언어 모델
- Embedding 임베딩
- Vector database 벡터 데이터베이스
- Reranking 재순위화
- MCP 2024-11-05 MCP 초기 규격 판
- MCP 2025-11-25 MCP 2025년 11월 규격 판
- MCP 2026-07-28 MCP 2026년 7월 규격 판
- HTTP 하이퍼텍스트 전송 프로토콜
- HTTPS 보안 HTTP
- Confidential Computing 기밀 컴퓨팅
- SPIRE SPIFFE 실행 환경
- TEE 신뢰 실행 환경
- Remote attestation 원격 증명
- DPoP 소유 증명 기반 토큰 제약
- PKI 공개키 기반 구조
- Digital certificate 디지털 인증서
- Zero trust 제로 트러스트
- TLS 전송 계층 보안
- Encryption 암호화
- 서버