1 minute read

SAML(Security Assertion Markup Language)은 조직 간 신원 정보를 안전하게 교환하기 위한 XML 기반의 보안 통신 메커니즘이다. SAML의 가장 중요한 핵심은 인터넷 SSO(Single Sign-On)를 지원한다는 점이며, 이를 통해 사용자는 여러 개의 인증 자격 증명(예: 비밀번호)을 유지할 필요 없이 한 번의 로그인만으로 다양한 애플리케이션에 접근할 수 있다.

Youtube: Intro to SAML: What, How and Why

SAML이 중요한 이유

SAML이 중요한 이유는 크게 세 가지 이다.

1. 보안 강화

SAML은 추가적인 자격 증명을 없애줌으로써 보안이 강화. 자격 증명이 여러 군데 분산되지 않기 때문에 피싱 공격의 기회를 줄일 수 있다. 실제로 최근 많은 SaaS 애플리케이션들이 성공적인 피싱 공격의 대상이 되었지만, SAML을 사용함으로써 이러한 위험을 상당히 줄일 수 있었다.

2. 접근성 향상

SAML을 사용하면 사용자는 비밀번호를 반복해서 입력할 필요 없이 애플리케이션에 접근할 수 있음. 링크 하나만으로 원하는 서비스에 접근할 수 있어 사용자 경험이 크게 향상된다.

3. 관리 비용 절감

SAML은 비밀번호 초기화와 같은 반복적인 인증 관련 작업을 줄여 관리자의 부담을 덜어준다. 이로 인해 헬프데스크 업무의 효율성이 향상되고, 중복된 인증을 관리하는 데 필요한 시간이 줄어듬.

SAML의 작동 방식

  1. 사용자 요청: 사용자가 애플리케이션에 접근하려고 할 때, 애플리케이션은 인증이 필요한 상황임을 인지하고, 사용자를 신뢰할 수 있는 신원 제공자(Identity Provider, IdP)로 리디렉션한다.

  2. 인증 및 토큰 발급: 신원 제공자(IdP)는 사용자를 인증한 후, 사용자가 성공적으로 인증되었음을 나타내는 SAML 어서션(SAML Assertion)을 생성합니다. 이 어서션은 암호화된 보안 토큰으로, 사용자가 인증되었음을 증명하는 역할을 한다.

  3. 어플리케이션 접근: 사용자는 이 SAML 어서션을 다시 애플리케이션 서비스 제공자(Service Provider, SP)에게 전달하고, 서비스 제공자는 이를 검증한 후 사용자에게 애플리케이션 접근 권한을 부여한다.

이 과정을 통해 사용자는 한 번의 로그인으로 여러 애플리케이션에 손쉽게 접근할 수 있게 되며, 자격 증명 관리 및 보안 위험이 줄어들게 된다.

Leave a comment