OpenID
- 정의: OpenID는 인터넷 사용자들이 여러 웹사이트에서 하나의 아이디로 로그인할 수 있게 하는 인증 프로토콜
- 역할: OpenID는 인증 과정을 표준화하고, 사용자가 특정 OpenID 제공자(IdP)를 통해 여러 웹사이트(Relying Party, RP)에 인증할 수 있게 한다.
- 구현 예: OpenID Connect는 OAuth 2.0을 기반으로 하는 인증 프로토콜로, 현재 널리 사용되는 OpenID 표준
SSO (Single Sign-On)
- 정의: SSO는 사용자가 한 번 로그인하면 동일한 자격 증명으로 여러 애플리케이션이나 시스템에 접근할 수 있게 하는 기능이자 개념
- 역할: SSO는 사용자 편의성을 높이고, 보안성을 강화하며, 관리 비용을 절감하는 것을 목표로 한다. SSO 자체는 특정 기술이나 프로토콜이 아니라 이러한 목적을 달성하기 위한 여러 기술을 포함하는 개념
- 구현 예: SSO는 다양한 프로토콜(SAML, OAuth, OpenID Connect 등)을 사용하여 구현될 수 있다
SSO 구현에 사용되는 주요 프로토콜
- SAML (Security Assertion Markup Language)
- 역할: XML 기반의 표준 프로토콜로, 주로 웹 브라우저 SSO에 사용됨. SAML은 IdP와 SP 간에 인증 정보를 교환한다
- 사용 사례: 기업 내부의 여러 웹 애플리케이션 간 SSO 구현
- OAuth
- 역할: 주로 권한 부여(Authorization)에 사용되는 프로토콜이지만, OpenID Connect와 결합되어 인증(Authentication)에도 사용
- 사용 사례: 소셜 로그인, API 접근 권한 위임.
- OpenID Connect (OIDC)
- 역할: OAuth 2.0을 기반으로 한 인증 프로토콜로, 사용자가 한 번 로그인하면 여러 애플리케이션에 접근할 수 있게 한다
- 사용 사례: 구글 계정을 통한 다양한 서드파티 애플리케이션 로그인.
요약
- OpenID: 특정한 인증 프로토콜로, 사용자가 여러 웹사이트에서 하나의 아이디로 로그인할 수 있게 한다
- SSO: 사용자가 한 번 로그인하면 여러 애플리케이션이나 시스템에 접근할 수 있게 하는 기능 또는 개념. SSO는 특정 프로토콜이 아니며, SAML, OAuth, OpenID Connect 등의 프로토콜을 통해 구현될 수 있음
이러한 구분을 통해 SSO는 다양한 프로토콜을 활용하여 사용자 경험과 보안을 개선하는 개념이며, OpenID는 이러한 프로토콜 중 하나로 작동한다
'tech > 보안&인증' 카테고리의 다른 글
[보안&인증] aws imds(Instance Metadata Service) 에 관하여 (0) | 2024.06.24 |
---|---|
ssh(secure shell) 이해하기 (0) | 2024.04.10 |