SAML 구성요소 (업데이트 중: 06/20/2022)
SAML(Security Assertion Markup Language) 로 보통 사므엘이라고 발음하죠..
SAML은 네트워크를 통해 인증과 권한에 관한 데이터를 서로 교환하기 위한 표준규약이며 Idp 서버와 SP 간에 안전하게 인증정보를 교환 할 수 있습니다.
<SAML 구성요소>
A. Identity Provide (IDP)
- 보통 IDP 라고 하며 SSO 솔루션을 제공하는 주체 입니다. (Okta, Azure portal, PingID, OneLogin, Duo, GCP etc)
-벤더는 달라도 컨셉은 비슷
B. Service Provider (SP)
- End point 에서 SAML Transaction을 발생시키는 장비들.
Proxy 장비 혹은 방화벽 같은 제품들이 될 수 있음. (Portal, Gateway etc..)
C. SAML Request / SAML Response
-SAML 에서 가장 중요한 두 개의 메인 메세지이다.
SP와 IDP 사이에서 XML encoded 된 메세지이다.
D. SAML Binding
-Endpoint(SP)가 SP와 IDP 가 어떻게 통신하는지 정의한다.
보통 HTTP 302 Redirect 나 HTTP POST 가 주로 많이 쓰임
E. SAML Attributes
-IDP에서 SP로 데이터 리턴. (Principal, user name, groups, group IDs etc)
-SAML은 클라우드 기반의 인증으로 user 정보만 가지고 있지 않고 여러 다양한 user attributes (유저정보)들을
가질 수 있다. LDAP attributes 하고 비슷하다고 생각하면 됨..
F. Metadata
- SAML 배포를 설명하고 메타데이터를 공유하여 상호 운용성의 기준 설정.
Small Schema 혹은 작은 형태의 파일로 IDP의 설정 정보 포함.
IDP 설정을 compact 하게 파일 포함하여 방화벽 등에서 설정 가능하도록 함.