OIDC(OpenID Connect)는 OAuth2 프로토콜(권한 부여에 사용됨)을 기반으로 하는 인증 프로토콜입니다. OIDC는 OAuth2의 표준화된 메시지 흐름을 사용하여 ID 서비스를 제공합니다.
OIDC의 디자인 목표는 "단순하고 복잡한 작업을 가능하게 하는 것"입니다. OIDC를 사용하면 개발자가 암호 파일을 소유하고 관리할 필요 없이 웹 사이트 및 앱에서 사용자를 인증할 수 있습니다. 이렇게 하면 앱 작성기에서 현재 애플리케이션에 연결된 브라우저 또는 네이티브 앱을 사용하는 사용자의 ID를 확인하는 안전한 방법을 제공합니다.
사용자의 인증은 사용자의 세션 또는 자격 증명을 검사할 ID 공급자에서 수행해야 합니다. 이렇게 하려면 신뢰할 수 있는 에이전트가 필요합니다. 네이티브 앱은 일반적으로 해당 목적을 위해 시스템 브라우저를 시작합니다. 포함된 보기는 앱이 사용자 암호를 스누핑하는 것을 막을 수 없기 때문에 신뢰할 수 없는 것으로 간주됩니다.
인증 외에도 사용자에게 동의를 요청할 수 있습니다. 동의는 애플리케이션이 보호된 리소스에 액세스할 수 있도록 허용하는 사용자의 명시적 권한입니다. 동의는 리소스에 대해 한 번만 제공해야 하므로 인증과 다릅니다. 사용자 또는 관리자가 수동으로 부여를 해지할 때까지 동의는 유효합니다.
사용 시기
사용자 동의 및 웹 로그인이 필요합니다.
시스템의 구성 요소
사용자: 애플리케이션에서 서비스를 요청합니다.
신뢰할 수 있는 에이전트: 사용자가 상호 작용하는 구성 요소입니다. 이 신뢰할 수 있는 에이전트는 일반적으로 웹 브라우저입니다.
신청: 애플리케이션 또는 리소스 서버는 리소스 또는 데이터가 상주하는 위치입니다. ID 공급자를 신뢰하여 신뢰할 수 있는 에이전트를 안전하게 인증하고 권한을 부여합니다.
Microsoft Entra ID: ID 공급자라고도 하는 OIDC 공급자는 사용자의 정보, 액세스 권한 및 흐름의 당사자 간의 트러스트 관계와 관련이 있는 모든 것을 안전하게 관리합니다. 사용자의 ID를 인증하고, 리소스에 대한 액세스 권한을 부여 및 해지하고, 토큰을 발급합니다.