업데이트 날짜: 2024년 3월 1일
기여자: Mark Scapicchio, Amber Forrest
Single Sign On(SSO)은 사용자가 하나의 자격 증명 세트를 사용하여 한 번만 로그인하면 동일한 세션 중에 여러 애플리케이션에 액세스할 수 있는 인증 체계입니다.
Single Sign On은 사용자 인증을 간소화하고, 사용자 환경을 개선하며, 제대로 구현될 경우 보안을 강화합니다. 회사 인트라넷 또는 엑스트라넷, 학생 포털, 공용 클라우드 서비스, 기타 사용자가 여러 애플리케이션 사이를 이동하며 업무를 수행해야 하는 환경에서 인증을 관리하고 액세스를 보호하는 데 자주 사용됩니다. 또한 뱅킹 및 전자상거래 사이트와 같은 고객 대상의 웹사이트와 앱에서 타사 제공업체의 애플리케이션을 원활하고 중단 없는 사용자 경험으로 결합하기 위해 점점 더 많이 사용되고 있습니다.
X-Force Threat Intelligence 인덱스는 주요 위협에 대한 새로운 인사이트를 제공하여 사이버 공격, 갈취 등에 대비하고 더 빠르게 대응할 수 있도록 도와줍니다.
데이터 유출 비용 보고서 등록
SSO(Single Sign On)는 서비스 공급자(애플리케이션, 웹 사이트, 서비스)와 ID 공급자(IdP) 또는 SSO 솔루션 간의 디지털 신뢰 관계를 기반으로 합니다. SSO 솔루션은 더 큰 IAM(ID 및 액세스 관리) 솔루션의 일부인 경우가 많습니다.
일반적으로 SSO 인증은 다음과 같이 작동합니다.
사용자가 서비스 제공업체 중 하나 또는 중앙 포털(예: 회사 인트라넷 또는 대학생 포털)에 SSO 로그인 자격 증명을 사용하여 로그인합니다.
사용자가 성공적으로 인증되면 SSO 솔루션은 사용자 ID에 대한 특정 정보(사용자 이름, 이메일 주소 등)가 포함된 세션 인증 토큰을 생성합니다. 이 토큰은 사용자의 웹 브라우저 또는 SSO 시스템에 저장됩니다.
사용자가 다른 신뢰할 수 있는 서비스 제공업체에 액세스하려고 하면 애플리케이션은 SSO 시스템을 통해 사용자가 세션에 대해 이미 인증되었는지 확인합니다. 사용자가 인증을 받은 경우 SSO 솔루션은 디지털 인증서로 인증 토큰에 서명하여 사용자를 검증하고 사용자에게 애플리케이션에 대한 액세스 권한을 부여합니다. 그렇지 않은 경우에는 사용자에게 로그인 자격 증명을 다시 입력하라는 메시지가 표시됩니다.
보안 주제 업데이트 구독하기
위에서 설명한 단일 로그인 및 사용자 자격 증명 집합으로 여러 관련 애플리케이션에 세션 액세스를 제공하는 SSO 프로세스를 단순 SSO 또는 순수 SSO라고 부르기도 합니다. 다른 유형의 SSO는 다음이 있습니다.
적응형 SSO를 사용하려면 초기 로그인 자격 증명 세트가 필요하지만, 사용자가 새 장치에서 로그인하거나 특히 민감한 데이터 또는 기능에 액세스하려고 시도하는 경우와 같이 추가 위험이 발생하면 추가 인증 요소나 새 로그인을 입력하라는 메시지가 표시됩니다.
페더레이션 ID 관리 또는 FIM은 SSO의 상위 집합입니다. SSO는 단일 조직 도메인 내의 애플리케이션 간의 디지털 신뢰 관계를 기반으로 하지만, FIM은 이러한 관계를 조직 외부의 신뢰할 수 있는 타사, 공급업체 및 기타 서비스 제공업체로 확장합니다. 예를 들어, FIM을 사용하면 로그인한 직원이 추가 로그인 없이 또는 간단한 사용자 이름 전용 로그인을 통해 타사 웹 애플리케이션(예: Slack 또는 WebEx)에 액세스할 수 있습니다.
소셜 로그인을 사용하면 최종 사용자가 인기 있는 소셜 미디어 사이트에서 인증할 때 사용하는 것과 동일한 자격 증명을 사용하여 애플리케이션에서 인증할 수 있습니다. 타사 애플리케이션 제공업체의 경우 소셜 로그인은 바람직하지 않은 행동(예: 잘못된 로그인, 장바구니 이탈)을 방지하고 앱 개선에 유용한 정보를 제공할 수 있습니다.
SSO는 여러 인증 프로토콜 및 서비스 중 하나를 사용하여 구현될 수 있습니다.
SAML(보안 어설션 마크업 언어)은 ID 제공업체와 여러 서비스 제공업체 간에 암호화된 인증 및 권한 부여 데이터를 교환하기 위한 가장 오래된 개방형 표준 프로토콜입니다. SAML은 다른 프로토콜보다 보안을 더 잘 제어할 수 있기 때문에 일반적으로 기업 또는 정부 애플리케이션 도메인 내부와 도메인 간에 SSO를 구현하는 데 사용됩니다.
Open Authorization, OAuth는 사용자의 비밀번호를 노출하지 않고 애플리케이션 간에 인증 데이터를 교환하는 개방형 표준 프로토콜입니다. OAuth를 사용하면 단일 로그인을 사용하여 일반적으로 각각에 대해 별도의 로그인이 필요한 애플리케이션 간의 상호 작용을 간소화할 수 있습니다. 예를 들어, OAuth를 사용하면 LinkedIn에서 이메일 연락처를 검색하여 잠재적인 새 네트워크 멤버를 찾을 수 있습니다.
또 다른 개방형 표준 프로토콜인 OICD는 REST API와 JSON 인증 토큰을 사용하여 웹 사이트 또는 애플리케이션이 다른 서비스 제공업체를 통해 사용자를 인증함으로써 사용자에게 액세스 권한을 부여할 수 있도록 합니다.
OAuth를 기반으로 하는 OICD는 주로 타사 애플리케이션, 장바구니 등에 대한 소셜 로그인을 구현하는 데 사용됩니다. 더 가벼운 구현인 OAuth/OIDC는 SaaS(Software-as-a-Service) 및 클라우드 애플리케이션, 모바일 앱 및 IoT(사물인터넷) 장치에서 SSO를 구현하기 위해 SAML에 사용되는 경우가 많습니다.
LDAP(Lightweight Directory Access Protocol)는 사용자 자격 증명을 저장하고 업데이트하기 위한 디렉터리와 디렉터리에 대해 사용자를 인증하는 프로세스를 정의합니다. 1993년에 도입된 LDAP는 디렉토리 액세스에 대한 세분화된 제어를 제공할 수 있기 때문에 SSO를 구현하는 많은 조직이 여전히 선택하는 인증 디렉토리 솔루션입니다.
ADFS(Active Directory Federation Services)는 Microsoft Windows Server에서 실행되어 온프레미스 및 오프프레미스 애플리케이션 및 서비스와 함께 SSO(Single Sign On)를 포함한 통합 ID 관리를 지원합니다. ADFS는 ADDS(Active Directory Domain Services)를 ID 공급자로 사용합니다.
SSO는 사용자의 시간과 수고를 덜어줍니다. 예를 들어, 기업 최종 사용자는 SSO를 사용하면 하루에 여러 애플리케이션에 여러 번 로그인하는 대신 기업 인트라넷에 한 번만 로그인하면 하루 종일 필요한 모든 애플리케이션에 액세스할 수 있습니다.
하지만 사용자가 기억해야 하는 비밀번호의 수와 관리자가 관리해야 하는 사용자 계정의 수를 크게 줄임으로써 SSO는 여러 가지 다른 이점을 제공할 수 있습니다.
관리해야 할 비밀번호가 많은 사용자는 모든 애플리케이션에서 짧고 약한 비밀번호를 동일하게 사용하거나 약간 변형하여 사용하는 위험하고 나쁜 습관에 빠지는 경우가 많습니다. 해커가 이러한 비밀번호 중 하나를 해독하면 여러 애플리케이션에 쉽게 액세스할 수 있습니다. SSO를 사용하면 여러 개의 짧고 약한 비밀번호를 하나의 길고 강력한 비밀번호로 통합하여 사용자가 기억하기 쉽고 해커가 알아내기 훨씬 더 어렵게 만들 수 있습니다.
IBM X-Force Threat Intelligence Index 2024에 따르면 2023년에는 도난당하거나 손상된 자격 증명을 사용한 사이버 공격이 전년 대비 71% 증가했습니다. SSO를 사용하면 해커의 표적이 되거나, 잘못된 사람이 비밀번호를 훔치거나, 우연히 발견하기 쉬운 비밀번호 관리자, 스프레드시트에 저장된 비밀번호, 스티커 메모에 적은 비밀번호 및 기타 기억 보조 도구의 필요성을 줄이거나 없앨 수 있습니다.
업계 분석 기관인 Gartner에 따르면 IT 헬프 데스크 통화의 20~50%는 비밀번호 분실 또는 비밀번호 재설정과 관련이 있습니다. 대부분의 SSO 솔루션을 사용하면 헬프 데스크의 지원을 통해 사용자가 직접 비밀번호를 쉽게 재설정할 수 있습니다.
SSO를 통해 관리자는 계정 프로비저닝 및 액세스 권한을 보다 간편하고 중앙 집중식으로 제어할 수 있습니다. 사용자가 조직에서 퇴사하는 경우 관리자는 더 적은 단계로 권한을 제거하고 사용자 계정을 해지할 수 있습니다.
SSO를 사용하면 개인 신원 정보(PII) 보호 및 데이터 접근 제어와 관련된 규제 요건은 물론, 세션 시간 제한과 같은 일부 규정의 특정 요건도 쉽게 충족할 수 있습니다.
SSO의 가장 큰 위험은 사용자의 자격 증명이 유출되면 공격자가 네트워크의 모든 애플리케이션과 리소스에 대한 액세스 권한을 부여할 수 있다는 점입니다. 하지만 사용자에게 길고 복잡한 비밀번호를 만들도록 요청하고, 비밀번호가 저장되는 모든 곳에서 신중하게 암호화하고 보호하면 이러한 최악의 시나리오를 방지하는 데 큰 도움이 됩니다.
또한 대부분의 보안 전문가는 SSO 구현의 일부로 2단계 인증(2FA) 또는 다단계 인증(MFA)을 권장합니다. 2FA 또는 MFA를 사용하려면 사용자는 휴대폰으로 전송된 코드, 지문, 신분증 등 비밀번호 외에 하나 이상의 인증 요소를 제공해야 합니다. 이러한 추가 인증정보는 해커가 쉽게 훔치거나 스푸핑할 수 없는 자격 증명이므로 MFA는 SSO에서 유출된 자격 증명과 관련된 위험을 크게 줄일 수 있습니다.
온프레미스나 클라우드에서 조직의 데이터와 애플리케이션에 액세스할 수 있는 사용자를 결정할 때 심층적인 컨텍스트, 인텔리전스, 보안을 추가하세요.
클라우드 및 온프레미스 애플리케이션에 대한 액세스 제어를 중앙 집중화하세요.
패스워드리스 인증 또는 다요소 인증 옵션을 활용해 기본 인증을 뛰어넘는 보안을 구현하세요.