SAML 2.0 (Security Assertion Markup Language 2.0) 은 웹 기반 인증·권한 부여 정보를 XML 형식으로 교환하기 위한 OASIS(Open Architecture to Enable Open Standards) 표준 프로토콜이다. 2005년에 제정된 SAML 2.0은 이전 버전(SAML 1.0/1.1) 대비 확장성·보안·상호운용성을 크게 향상시켰으며, 현재 기업 및 클라우드 서비스에서 싱글 사인온(SSO) 구현의 사실상의 표준으로 널리 사용된다.
1. 개요
정식 명칭: Security Assertion Markup Language 2.0
제정 기관: OASIS Security Services Technical Committee
최초 발표: March 2005 (OASIS Standard)
주요 목적: 서로 다른 도메인 간에 사용자의 인증 정보와 속성을 안전하게 전달하여, 별도의 로그인 절차 없이 연계 서비스에 접근하도록 함.
2. 핵심 개념
용어
정의
Assertion(주장)
발급자(IdP)가 인증·속성·권한 정보를 담아 서명·암호화한 XML 문서.
Protocol
Assertion을 요청·전송·응답하는 메시지 흐름 정의(예: AuthnRequest, Response).
Binding
SAML 메시지를 전송하는 전송 계층 방식. HTTP Redirect, HTTP POST, HTTP Artifact, SOAP 등이 있다.
Profile
특정 사용 시나리오에 맞게 Protocol·Binding·Assertion을 조합한 규격. 가장 널리 사용되는 것은 Web Browser SSO Profile.
Identity Provider (IdP)
사용자를 인증하고 Assertion을 발행하는 주체.
Service Provider (SP)
Assertion을 검증하고 서비스 접근을 허용하는 주체.
Metadata
IdP·SP 간에 엔드포인트, 인증서, 지원하는 Binding·Profile 등을 서술한 XML 파일로, 설정 자동화를 지원한다.
3. 작동 원리 (Web Browser SSO 흐름)
SP 접근: 사용자가 SP에 접근하면 SP는 인증되지 않은 상태를 감지하고, IdP에 인증 요청(AuthnRequest)을 전송한다(보통 HTTP Redirect 혹은 POST).
IdP 인증: 사용자는 IdP에 로그인(또는 기존 세션 사용)한다.
Assertion 발행: IdP는 인증 성공 시 Assertion을 생성하고, 서명·필요 시 암호화한 뒤 Response 메시지에 담아 사용자의 브라우저에게 전송한다(HTTP POST).
XML Encryption (W3C Recommendation) – Assertion 암호화.
OAuth 2.0 / OpenID Connect – 현대 웹·모바일 인증 시나리오와 보완·대체 관계.
WS‑Federation – SOAP 기반 연동 시 SAML과 병행 사용.
9. 활용 사례
기업 내부 SSO: 사내 ERP·CRM·메일 시스템을 하나의 IdP(Azure AD)로 통합.
클라우드 서비스 연동: SaaS(예: Salesforce, ServiceNow)와 온프레미스 애플리케이션 간 연동.
학술 기관 연합: 대학 간 자원 공유를 위한 Shibboleth 기반 연합 인증.
정부 전자민원: 공공 포털에 대한 시민 인증·속성 제공.
10. 참고 문헌
OASIS Standard – Security Assertion Markup Language (SAML) V2.0 (Release 1.0), 2005.
SAML Technical Overview, Microsoft Docs, 2023.
Jon Crosby, Understanding SAML 2.0, O'Reilly Media, 2020.
SAML Profiles, OASIS Security Services TC, 2022.
RFC 7522 – Security Assertion Markup Language (SAML) 2.0 Assertion Profile for OAuth 2.0, IETF, 2015.
요약: SAML 2.0은 인증·속성 정보를 XML 기반으로 교환하는 국제 표준으로, 웹 브라우저 기반 싱글 사인온(SSO) 구현에 핵심적인 역할을 한다. IdP와 SP 간의 신뢰 관계와 메타데이터를 활용해 다양한 서비스와 안전하게 연동할 수 있으며, 현재 클라우드·기업·학술·공공 분야 등에서 폭넓게 적용되고 있다.