2장. 외부 ID 공급자를 사용하여 IdM 인증

주의

외부 ID 공급자에 대한 사용자 인증을 위임하는 것은 현재 완전히 지원되는 기능이 아닌 기술 프리뷰입니다.

OAuth 2 장치 권한 부여 흐름을 지원하는 외부 ID 공급자(IdP)와 사용자를 연결할 수 있습니다. 이러한 사용자가 RHEL 9.1 이상에서 사용할 수 있는 SSSD 버전으로 인증하면 외부 IdP에서 인증 및 권한 부여를 수행한 후 Kerberos 티켓을 사용하여 RHEL IdM(Identity Management) SSO 기능을 수신합니다.

주요 기능은 다음과 같습니다.

  • ipa idp-* 명령을 사용하여 외부 IdP에 대한 참조 추가, 수정 및 삭제.
  • ipa user-mod --user-auth-type=idp 명령을 사용하여 사용자에 대해 IdP 인증을 활성화합니다.

이 섹션에서는 다음 항목에 대해 설명합니다.

2.1. IdM을 외부 IdP에 연결할 때의 이점

관리자는 클라우드 서비스 공급자와 같은 외부 ID 소스에 저장된 사용자가 IdM(Identity Management) 환경에 연결된 RHEL 시스템에 액세스할 수 있도록 허용할 수 있습니다. 이를 위해 이러한 사용자를 위해 Kerberos 티켓을 발행하는 인증 및 권한 부여 프로세스를 외부 엔티티에 위임할 수 있습니다.

이 기능을 사용하여 IdM의 기능을 확장하고 외부 ID 공급자(IdP)에 저장된 사용자가 IdM에서 관리하는 Linux 시스템에 액세스할 수 있도록 허용할 수 있습니다.

2.1.1. IdM이 외부 IdP를 통해 로그인을 통합하는 방법

SSSD 2.7.0에는 idp Kerberos 사전 인증 방법을 구현하는 sssd-idp 패키지가 포함되어 있습니다. 이 인증 방법은 OAuth 2.0 장치 권한 부여 흐름을 따라 권한 부여 결정을 외부 IdP에 위임합니다.

  1. IdM 클라이언트 사용자는 예를 들어 명령줄에서 kinit 유틸리티를 사용하여 Kerberos TGT를 검색하여 OAuth 2.0 장치 권한 부여 흐름을 시작합니다.
  2. 특수 코드 및 웹 사이트 링크는 권한 부여 서버에서 IdM KDC 백엔드로 전송됩니다.
  3. IdM 클라이언트는 링크와 코드를 사용자에게 표시합니다. 이 예에서 IdM 클라이언트는 명령줄에 링크 및 코드를 출력합니다.
  4. 사용자는 다른 호스트, 휴대폰 등에 있을 수 있는 브라우저에서 웹 사이트 링크를 엽니다.

    1. 사용자가 특수 코드를 입력합니다.
    2. 필요한 경우 사용자는 OAuth 2.0 기반 IdP에 로그인합니다.
    3. 사용자에게 정보에 액세스할 수 있도록 클라이언트에 권한을 부여하라는 메시지가 표시됩니다.
  5. 사용자는 원래 장치 프롬프트에서 액세스를 확인합니다. 이 예제에서 사용자는 명령줄에서 Enter 키를 누릅니다.
  6. IdM KDC 백엔드는 OAuth 2.0 인증 서버를 폴링하여 사용자 정보에 액세스합니다.

지원되는 기능:

  • 키보드-대화형 인증 방법이 활성화된 SSH를 통해 원격으로 로그인하면 PAM(Pluggable Authentication Module) 라이브러리를 호출할 수 있습니다.
  • 로그인 서비스를 통해 콘솔로 로컬 로그인.
  • kinit 유틸리티를 사용하여 Kerberos 티켓(TGT)을 검색합니다.

현재 지원되지 않는 기능:

  • IdM WebUI에 직접 로그인 IdM WebUI에 로그인하려면 먼저 Kerberos 티켓을 받아야 합니다.
  • Cockpit WebUI에 직접 로그인. Cockpit WebUI에 로그인하려면 먼저 Kerberos 티켓을 받아야 합니다.