프로젝트 옐로우핑거 소개 연구실 문의하기
contact@yellow-finger.com
02.2205.4128
How does Single Sign-On (SSO) work?
SSO(Single Sign-On)는 어떻게 작동합니까?
How does Single Sign-On (SSO) work?
Single Sign-On (SSO) is an authentication process that allows users to access multiple applications with a single login.
SSO(Single Sign-On)는 사용자가 한 번의 로그인으로 여러 애플리케이션에 접근할 수 있는 인증 프로세스이다.
요약 :)
SSO(Single Sign-On)는 사용자가 한 번의 로그인으로 여러 애플리케이션에 액세스할 수 있도록 하는 인증 프로세스입니다.

이는 사용자의 자격 증명을 저장하고 각 응용 프로그램에 대해 이를 확인하는 중앙 인증 서버를 사용하여 수행됩니다.
더보기→

출처.
Dr Milan Milanović. (2024.03.24). Medium. How does Single Sign-On (SSO) work?. 2024.04.01. https://medium.com/@techworldwithmilan/how-does-single-sign-on-sso-work-31ffa1afcc63
SSO(Single Sign-On)는 사용자가 한 번의 로그인으로 여러 애플리케이션에 액세스할 수 있도록 하는 인증 프로세스입니다. 이는 사용자의 자격 증명을 저장하고 각 응용 프로그램에 대해 이를 확인하는 중앙 인증 서버를 사용하여 수행됩니다. SSO의 아이디어는 클라우드 시대에 새로운 것이 아닙니다. 1990년대 중반부터 후반까지 기업이 PC, 네트워크, 서버를 안전하게 연결할 수 있도록 지원한 온프레미스 ID 솔루션이 SSO 기술의 원천입니다. 이 무렵 기업에서는 LDAP(Lightweight Directory Access Protocol) 및 AD(Microsoft Active Directory) 와 같은 특수 시스템을 사용하여 사용자 ID를 처리하기 시작했습니다 . 그 후에는 온프레미스 SSO 또는 WAM(웹 액세스 관리) 제품을 사용하여 액세스를 보호했습니다. SSO 무대 위의 배우들 SSO 게임에는 세 가지 핵심 플레이어가 있습니다. IdP(ID 공급자): 중앙 인증 서버입니다. 여기에 자격 증명을 입력하고 확인을 받는 곳입니다. 보안이 철저한 건물 입구라고 생각하시면 됩니다. 서비스 공급자(SP): 이러한 개별 애플리케이션은 사용자 로그인을 위해 SSO를 사용합니다. 업무용 이메일, 프로젝트 관리 도구 및 CRM 플랫폼은 모두 SP가 될 수 있습니다. 이것을 보안 건물 내의 개별 사무실이라고 상상해 보십시오. SSO 서버: IdP와 SP 사이의 브리지입니다. 통신을 처리하고 인증 토큰을 안전하게 전송합니다. 다양한 사무실의 입구를 연결하는 안전한 복도라고 생각하세요. SSO 워크플로우 Google 및 기타 서비스는 SSO 작동 방식을 보여주는 훌륭한 예입니다. Google 계정을 사용하여 Trello에 액세스 하려고 시도하는 예를 들어보겠습니다 . Trello에서 새 사용자 계정을 만들고 새 사용자 이름/비밀번호 세트를 기억할 필요가 없습니다. 예를 들어 Google 계정으로 Trello에 로그인 하려고 하면 account.google.com에서 호스팅되는 중앙 서비스로 리디렉션됩니다. 여기에 자격 증명을 입력하는 로그인 양식이 표시됩니다. 인증 프로세스가 성공하면 Google은 자동으로 로그인되는 액세스 권한을 얻을 수 있는 Trello로 리디렉션합니다. Google 계정을 통해 Trello에 액세스 Google 계정을 사용하여 Trello에 액세스하려는 경우 발생하는 단계는 다음과 같습니다. 사용자 접근 요청 : Trello 로그인 웹 페이지를 이용하고 로그인 방법으로 Google 계정을 선택합니다. IdP로 리디렉션 : Trello는 사용자를 Google 로그인 페이지로 리디렉션합니다. 로그인 페이지 제공 : 사용자에게 Google 로그인 페이지가 제공됩니다. 자격 증명 입력됨 : 사용자가 Google 자격 증명을 입력합니다. SSO 서버 확인 : Google은 SSO 인증 서버에 인증 정보를 보냅니다. IdP에서 인증: 자격 증명이 유효한 경우 권한 부여 서버는 인증 토큰(SAML)을 반환합니다. 액세스 권한 부여 : Google이 Trello에 인증 토큰을 보냅니다. 토큰 확인 : 마지막 단계에서 Trello는 토큰을 Google 인증 서버로 보내 유효성을 검사합니다. 유효한 토큰 : 토큰이 유효한 경우 Trello는 사용자에 대한 액세스를 허용하고 향후 상호 작용을 위해 세션을 저장합니다. SSO 워크플로우 SSO의 이점 SSO에는 다음과 같은 여러 가지 이점이 있습니다. 향상된 사용자 경험 : 사용자는 여러 사용자 이름과 비밀번호를 기억할 필요가 없습니다. 보안 강화 : 사용자가 애플리케이션 전체에서 비밀번호를 재사용할 가능성이 줄어듭니다. 단순화된 사용자 액세스 감사 : 적절한 개인이 리소스와 민감한 데이터에 액세스할 수 있도록 보장하는 것이 어려울 수 있습니다. SSO 솔루션은 역할, 부서, 직위에 따라 사용자 액세스 권한을 구성할 수 있습니다. SSO의 단점 SSO에는 몇 가지 중요한 단점도 있습니다. 단일 실패 지점 : 가장 주목할만한 단점 중 하나는 SSO가 단일 실패 지점을 생성한다는 것입니다. SSO 시스템이 손상된 경우 공격자는 연결된 모든 애플리케이션과 서비스에 액세스할 수 있습니다. 보안 위험 : 자격 증명이 손상되면 연결된 모든 애플리케이션의 보안이 위험에 처할 수 있습니다. 앱 호환성 : 때때로 애플리케이션이 SSO 시스템과 작동하도록 올바르게 구성되지 않은 경우가 있습니다. Kerberos, OAuth 또는 SAML을 사용하는 애플리케이션 제공자는 진정한 SSO를 수행할 수 있어야 합니다. 그렇지 않은 경우 SSO 솔루션은 완전한 적용 범위를 제공하지 않으며 사용자가 기억해야 하는 또 다른 비밀번호입니다. SSO 유형 SSO를 사용하려면 다양한 표준과 프로토콜을 알아야 합니다. 몇 가지 일반적인 유형의 프로토콜은 다음과 같습니다. SAML : 가장 일반적인 SSO 유형입니다. SAML 프로토콜을 사용하여 SSO 서버와 애플리케이션 간에 인증 정보를 교환합니다. OAuth(Open Authorization) 2.0) : 리소스 소유자를 대신하여 서버 리소스에 대한 위임된 액세스를 제공합니다. 이는 토큰이 전송되는 방법을 지정하여 사용자 ID를 IDP로 인증하고 자격 증명을 사용하여 API에 액세스할 수 있도록 합니다. OIDC(Open ID Connect)는 OAuth 2.0을 기반으로 하는 새로운 유형의 SSO입니다. SAML보다 더 간단한 프로토콜이며 웹 애플리케이션과 통합하기가 더 쉽습니다. OAuth 2.0에 대해 자세히 알아보려면 다음 링크를 확인하세요 . Postman의 OAuth 2.0을 사용할 수도 있습니다 . SSO 프로토콜 Kerberos 및 스마트 카드 인증 과 같은 일부 다른 SSO 유형은 널리 사용되지 않습니다. Kerberos를 사용하면 사용자는 자격 증명을 사용하여 KDC에서 서비스 티켓을 얻을 수 있습니다. 그런 다음 이러한 티켓은 액세스를 위해 애플리케이션에 제공되므로 반복적인 로그인이 필요하지 않습니다. 그러나 Kerberos는 KDC와 모든 참가자 간의 공유 비밀에 의존하므로 자격 증명을 노출하는 손상된 서버와 같은 보안 문제로 인해 인터넷 연결 SSO에 적합하지 않습니다. ID를 보유하는 스마트 카드는 SSO 시스템(자물쇠 등)과 함께 작동하여 각각에 대해 별도의 로그인을 하지 않고도 애플리케이션(문)에 대한 액세스 권한을 부여합니다. 인증 프로세스에 물리적 요소를 추가하여 무단 액세스에 대한 저항력을 강화합니다. 하지만 사용자가 물리적으로 휴대해야 합니다. 적절한 SSO 프로토콜 선택 적절한 프로토콜을 선택할 때 다음 사항을 고려해야 합니다. 기업 및 소비자 애플리케이션 : SAML은 기업 ID 공급자 및 복잡한 인증 시나리오와의 광범위한 지원 및 통합 기능으로 인해 기업 애플리케이션에 선호되는 경우가 많습니다. OAuth 2.0 및 OIDC는 소비자 대상 애플리케이션에 더 적합하며 모바일 및 웹 애플리케이션과의 유연성과 호환성을 제공합니다. 승인 대 인증 : 기본 요구 사항이 인증(사용자 신원 확인)인 경우 SAML 또는 OIDC를 선택하세요. OAuth 2.0을 기반으로 구축된 OIDC는 OAuth의 인증 기능에 대한 추가 ID 계층을 제공합니다. 애플리케이션이 사용자 비밀번호를 노출하지 않고 사용자 리소스에 대한 액세스를 요청해야 하는 경우 OAuth 2.0을 사용하세요. 애플리케이션 및 플랫폼 호환성 평가: SSO 프로토콜이 기존 인프라 및 통합하려는 애플리케이션과 호환되는지 확인하세요. 일부 레거시 또는 엔터프라이즈 시스템은 SAML을 더 광범위하게 지원할 수 있지만 최신 애플리케이션은 API 친화적이기 때문에 OAuth 2.0 및 OIDC를 선호하는 경우가 많습니다. 사용자 경험을 고려하십시오. OIDC 및 OAuth 2.0의 현대적인 토큰 기반 접근 방식은 특히 웹 및 모바일 애플리케이션에 대해 더욱 원활하고 통합된 사용자 경험을 제공할 수 있습니다. 미래 보장: 애플리케이션 생태계의 미래 방향을 고려하십시오. 클라우드 기반 서비스, API, 모바일 앱으로 전환하고 있나요? OAuth 2.0 및 OIDC는 더 많은 유연성을 제공할 수 있으며 일반적으로 클라우드 및 모바일 서비스에서 더 미래 지향적인 것으로 간주됩니다. 규정 준수 및 규제 요구 사항: 선택한 프로토콜이 GDPR, HIPAA 또는 특정 보안 또는 개인 정보 보호 표준을 규정할 수 있는 기타 산업과 관련된 특정 규제 요구 사항을 충족하는지 확인하세요. SSO 구현 시중에 나와 있는 많은 제품을 SSO에 사용할 수 있습니다. Microsoft Entra ID (이전의 Microsoft Active Directory). 이미 Microsoft 에코시스템에 투자한 조직에 이상적인 이 제품은 Office 365, Dynamics CRM 및 기타 Microsoft 서비스와의 원활한 통합을 제공합니다. 강력한 보안 기능과 포괄적인 관리 기능으로 잘 알려져 있습니다. Okta 는 사용 용이성, 확장성 및 광범위한 애플리케이션 통합으로 잘 알려진 인기 있는 클라우드 기반 SSO 솔루션입니다. 포괄적인 ID 및 액세스 관리(IAM) 플랫폼을 원하는 조직에게 강력한 옵션입니다. 핑 아이덴티티 . 유연성으로 잘 알려진 Ping Identity는 복잡한 보안 요구 사항을 가진 기업에 적합합니다. 강력한 모바일 및 API 보안 옵션을 제공하므로 높은 수준의 사용자 정의 및 보안이 필요한 조직에 적합합니다. 원로그인 . 단순성과 통합에 초점을 맞춘 OneLogin은 중소기업에 적합한 간단한 SSO 솔루션을 제공합니다. 보안 강화를 위해 실시간 위협 탐지 및 AI 기반 인증을 제공합니다. Auth0은 개발자 친화적인 접근 방식으로 선호됩니다. 강력한 사용자 정의 옵션을 제공하므로 인증 흐름을 맞춤화해야 하는 조직에 적합합니다. 광범위한 프로그래밍 언어와 프레임워크를 지원합니다.