SSO(Single Sign-On)는 보안과 편의성을 높이기 위해 모든 사용자 애플리케이션 로그인을 하나의 로그인으로 줄이는 중요한 클라우드 보안 기술입니다.
이 글을 읽은 후에 다음을 할 수 있습니다:
관련 콘텐츠
인터넷에서 가장 인기 있는 인사이트를 한 달에 한 번 정리하는 Cloudflare의 월간 요약본 theNET를 구독하세요!
글 링크 복사
SSO(Single Sign-On)는 여러 애플리케이션 로그인 화면을 하나로 결합하는 기술입니다. SSO를 사용하면 사용자는 모든 SaaS 애플리케이션에 액세스하기 위해 단일 페이지에 로그인 자격 증명(사용자 이름, 비밀번호 등)을 한 번만 입력하면 됩니다.
SSO는 내부 IT 팀에서 사용자 애플리케이션을 할당하고 관리하는 비즈니스 컨텍스트에서 자주 사용됩니다. SaaS 애플리케이션을 사용하는 원격 작업자도 SSO를 사용하면 이점이 있습니다.
이미 바에 입장한 고객이 추가로 술을 구매하려고 할 때마다 나이를 증명하기 위해 신분증을 제시해야 한다고 상상해 보세요. 일부 고객은 계속되는 확인에 빠르게 불만을 표시하고 자신의 음료를 몰래 가져와 이러한 조치를 우회하려고 할 수도 있습니다.
그러나 대부분의 식당에서는 고객의 신원을 한 번만 확인한 다음 저녁 시간 내내 고객에게 술을 제공합니다. 이는 SSO 시스템과 다소 비슷합니다. 사용자는 ID를 계속해서 확인받는 대신 ID를 한 번 확인받은 다음 여러 서비스에 액세스할 수 있습니다.
SSO는 많은 ID 및 액세스 관리(IAM) 또는 액세스 제어 솔루션의 중요한 측면입니다.사용자 ID 확인은 각 사용자가 가져야 하는 권한을 아는 데 중요합니다.Cloudflare Zero Trust는 사용자 ID 관리를 위해 SSO 솔루션과 통합되는 액세스 제어 솔루션의 한 예입니다.
SSO는 사용자에게 훨씬 간단하고 편리할 뿐만 아니라 더 안전한 것으로 널리 간주됩니다. 이것은 직관과는 다른 것처럼 보일 수 있습니다. 여러 비밀번호를 사용하여 여러 번 로그인하는 대신 하나의 비밀번호로 한 번 로그인하는 것이 어떻게 더 안전할까요? SSO 지지자들은 다음과 같은 이유를 듭니다.
사용자가 SSO 서비스에 로그인할 때마다 서비스에서는 사용자가 확인되었음을 기억하는 인증 토큰을 생성합니다. 인증 토큰은 사용자에게 발급된 임시 ID 카드와 같이 사용자의 브라우저 또는 SSO 서비스의 서버에 저장된 디지털 정보입니다. 사용자가 액세스하는 모든 앱에서는 SSO 서비스를 통해 확인합니다. SSO 서비스에서 사용자의 인증 토큰을 앱에 전달하면 사용자가 허용됩니다. 그러나 사용자가 아직 로그인하지 않은 경우 SSO 서비스를 통해 로그인하라는 메시지가 표시됩니다.
SSO 서비스에서는 사용자 ID를 저장하지 않기 때문에 사용자가 누구인지 반드시 기억하지는 않습니다. 대부분의 SSO 서비스는 별도의 ID 관리 서비스와 대조하여 사용자 자격 증명을 확인해서 작동합니다.
SSO를 데이터베이스 자체를 관리하지 않고 사용자의 로그인 자격 증명이 데이터베이스의 ID와 일치하는지 여부를 확인할 수 있는 중개자라고 생각하면 됩니다. 이는 마치 사서가 책 제목에 따라 도서관 이용자 대신 책을 조회해주는 것과 같습니다. 사서는 전체 도서관 카드 카탈로그를 기억하지 못하지만, 쉽게 액세스할 수 있습니다.
인증 토큰을 외부 앱 및 서비스에 전달하는 기능은 SSO 프로세스에서 매우 중요합니다. 이러한 전달을 통해 다른 클라우드 서비스와 별도로 본인 확인이 가능하므로 SSO가 가능합니다.
소수의 사람만 입장할 수 있는 독점 이벤트를 생각해 보세요. 이벤트 장소 입구의 경비원이 게스트를 확인하고 승인했음을 나타내는 한 가지 방법으로 각 게스트의 손에 스탬프를 찍을 수 있습니다. 이벤트 담당 직원은 모든 참석자의 스탬프를 확인하여 참석이 허용되는 사람인지 확인할 수 있습니다. 그러나 모든 스탬프가 허용되는 것은 아닙니다. 이벤트 담당 직원은 입구에서 경비원이 사용하는 스탬프의 정확한 모양과 색상을 알 것입니다.
각 스탬프가 동일하게 보여야 하는 것처럼, 인증 토큰에는 정확하고 적법한지 확인하기 위한 고유한 통신 표준이 있습니다.주요 인증 토큰 표준은 SAML(Security Assertion Markup Language)이라고 합니다.웹 페이지가 HTML(Hypertext Markup Language)로 작성되는 방식과 비슷하게, 인증 토큰은 SAML로 작성됩니다.
SSO는 사용자 액세스 관리의 한 측면일 뿐입니다. SSO는 조직의 내부 시스템 내에서 사용자 행동을 추적하고 제어하기 위한 액세스 제어, 권한 제어, 활동 로그, 기타 조치와 결합되어야 합니다. 그렇지만 SSO는 액세스 관리의 중요한 요소입니다. 시스템에서 사용자가 누구인지 모르는 경우, 해당 사용자의 행동을 허용하거나 제한할 방법이 없습니다.
Cloudflare Zero Trust는 앱 및 웹 사이트에 대한 사용자 액세스를 제어하고 보호합니다. Cloudflare Zero Trust는 대부분의 VPN을 대체할 수 있습니다. Cloudflare는 SSO 공급자와 통합되어 사용자를 식별하고 할당된 액세스 권한을 적용합니다.
SSO는 사용자가 단일 자격 증명 집합으로 여러 애플리케이션에 액세스할 수 있도록 하는 인증 프로세스입니다. 이 프로세스에는 일반적으로 사용자를 인증하는 ID 공급자와 인증 토큰을 수락하는 서비스 공급자가 포함됩니다.
SSO를 사용하면 사용자가 애플리케이션마다 여러 자격 증명 세트를 기억할 필요가 없습니다. 여러 비밀번호를 저장하는 기존 비밀번호 관리자와 달리 SSO는 하나의 자격 증명 세트만 기억하고 보호하면 됩니다.
SSO를 통한 연합형 ID 관리는 중앙 집중식 인증 제어를 제공하여 조직에서 여러 애플리케이션에 일관된 보안 정책을 더 쉽게 적용할 수 있도록 지원합니다. 또한 잠재적으로 손상될 수 있는 저장된 자격 증명의 수를 제한하여 조직의 공격면을 줄입니다.
SSO 시스템은 MFA와 통합되어 초기 로그인 자격 증명 이외의 추가 확인을 요구할 수 있습니다. 이러한 통합은 SSO 기능의 편의성을 유지하면서도 여러 보안 계층을 생성합니다.
Kerberos는 대칭 키 암호화 및 신뢰할 수 있는 타사 권한 부여를 사용하여 ID를 확인하는 인증 프로토콜입니다. 보안 검증 마크업 언어(SAML)는 ID 공급자와 서비스 공급자 간에 인증 및 권한 부여 데이터를 교환하는 XML 기반 개방형 표준입니다. Kerberos는 온프레미스 환경에서 일반적으로 사용되지만, SAML은 일반적으로 웹 기반 SSO 솔루션에 사용됩니다.