2.5.3. SAML 인증 구성


SAML을 사용하면 IdM(Identity Provider)과 서비스 공급자(SP) 간에 인증 및 권한 부여 데이터를 교환할 수 있습니다. Ansible Automation Platform은 사용자를 인증하기 위해 하나 이상의 SAML IdP와 통신하도록 구성할 수 있는 SAML SP입니다.

SAML IdP에서 선택적으로 제공하는 그룹 및 속성에 따라 사용자는 이 인증자와 연결된 인증자 맵을 기반으로 Ansible Automation Platform의 팀과 조직에 배치할 수 있습니다. 이 매핑을 사용하면 사용자가 SAML을 통해 로그인할 때 Ansible Automation Platform에서 사용자를 올바르게 식별하고 이름, 이메일, 그룹 멤버십과 같은 적절한 속성을 할당할 수 있습니다.

사전 요구 사항

Ansible Automation Platform에서 SAML 인증을 구성하기 전에 다음을 수행해야 합니다.

  • SAML IdM(Identity Provider)을 구성합니다.
  • Ansible Automation Platform과의 통합에 필요한 설정을 사용하여 SAML IdP를 미리 구성합니다. 예를 들어 Microsoft Entra ID에서 다음을 구성할 수 있습니다.

    • ID(암호 ID): 원하는 모든 값일 수 있지만 Ansible Automation Platform에 구성된 값과 일치해야 합니다.
    • 응답 URL(ACS) URL: SAML 방법이 Ansible Automation Platform에 구성되면 이 URL이 자동으로 생성됩니다. 해당 값은 Ansible Automation Platform에서 복사하고 IdP 설정에서 붙여 넣어야 합니다.
  • SAML IdP 애플리케이션의 사용자 속성을 수집합니다. IdP마다 다른 속성 이름과 형식을 사용할 수 있습니다. 정확한 특성 이름과 예상되는 값은 특정 IdP에 대한 설명서를 참조하십시오.
  • 다음 명령을 사용하여 개인 키 및 공용 인증서를 생성합니다.

    $ openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -sha256 -days 3650 -nodes

프로세스

  1. 탐색 패널에서 Access Management Authentication Methods 를 선택합니다.
  2. 인증 생성을 클릭합니다.
  3. 이 SAML 구성 의 이름을 입력합니다.
  4. 인증 유형 목록에서 SAML 을 선택합니다. 인증 세부 정보 섹션은 선택한 인증 유형과 관련된 필드를 표시하도록 자동으로 업데이트됩니다.
  1. 목록에서 자동 마이그레이션 사용자 자동 마이그레이션 에서 레거시 인증 방법을 선택합니다. 2.4에서 2.5로 업그레이드한 후 사용자를 이 새로운 인증 구성으로 자동으로 마이그레이션하는 레거시 인증기가 됩니다. 사용자 마이그레이션에 대한 중요한 정보는 RPM 업그레이드 및 마이그레이션 가이드의 Ansible Automation Platform 후 업그레이드 단계를 참조하십시오.
  2. SAML 서비스 공급자 엔터티 ID 필드에서 SAML 서비스 공급자 구성의 대상으로 사용되는 애플리케이션 정의 고유 식별자를 입력합니다. 일반적으로 서비스 공급자의 기본 URL이지만 실제 값은 IdP에서 예상되는 엔터티 ID에 따라 다릅니다.
  3. SAML 서비스 공급자 공용 인증서 필드에 인증서 콘텐츠를 포함합니다. 이 정보는 사전 요구 사항으로 생성한 cert.pem에 포함되어 있으며 --BEGIN CERTIFICATE- 및 --END CERTIFICATE -- 를 포함해야 합니다.
  4. SAML 서비스 공급자 개인 키 필드에 개인 키 콘텐츠를 포함합니다. 이 정보는 사전 요구 사항으로 생성한 key.pem에 포함되어 있으며 --BEGIN PRIVATE KEY----END PRIVATE KEY ---을 포함해야 합니다.
  5. IdP 로그인 URL 필드에서 로그인 시작을 위해 사용자를 리디렉션할 URL 을 입력합니다. SAML IdP 애플리케이션의 로그인 URL입니다.
  6. IdP Public Cert 필드에 IdP에서 제공하는 보안에 사용되는 공개 인증서를 입력합니다. IdP에서 다운로드할 수 있는 SAML 인증서입니다.

    참고

    IdP Public Cert 필드의 IdP에는 --BEGIN CERTIFICATE- 및 --END CERTIFICATE-- 를 포함한 전체 인증서가 포함되어야 합니다. IdP를 포함하지 않는 경우 접두사 및 접미사를 수동으로 입력해야 합니다.

  7. 엔터티 ID의 어설션에 반환된 엔터티 ID 를 입력합니다. IdP SAML 애플리케이션의 식별자입니다. IdP에서 제공하는 SAML 메타데이터에서 이 값을 찾을 수 있습니다.
  8. 그룹, 사용자이메일 , 사용자 이름 ,사용자 성사용자 이름사용자 세부 정보를 입력합니다.
  9. User Permanent ID 필드에 사용자의 영구 ID를 입력합니다. 이 필드는 필수입니다.

    참고

    SAML IdP를 통해 추가 속성을 사용할 수 있습니다. 이러한 값은 additional Authenticators 필드 또는 extra_data 속성 매핑 필드에 SAML IDP에 포함되어야 합니다. 자세한 내용은 해당 단계를 참조하십시오.

  10. SAML Assertion Consumer Service (ACS) URL 필드는 구성한 각 ID 공급자(IdP)가 있는 서비스 공급자(SP)로 서비스를 등록합니다. 이 필드를 비워 둡니다. 이 인증 방법을 저장하면 자동으로 생성됩니다. 이 필드는 IdP의 Reply URL 설정과 일치해야 합니다.
  11. 선택 사항: 이 인증기를 사용할 수 있는 추가 인증 필드를 입력합니다. 이러한 필드는 검증되지 않으며 인증기로 직접 전달됩니다. 예를 들어, Email, Username, Last Name, First Name이 아닌 모든 SAML IdP 속성을 매핑하려면 다음을 입력합니다.

    GET_ALL_EXTRA_DATA: true

    또는 SAML IDP에 대한 extra_data 속성 매핑 필드에 SAML IdP 속성 목록을 포함할 수 있습니다.

    참고

    이 필드에 정의된 값은 UI에 제공된 전용 필드를 재정의합니다. 여기에 정의되지 않은 모든 값은 인증자에게 제공되지 않습니다.

  12. SAML 서비스 공급자 조직 정보 필드에 URL, 표시 이름 및 앱 이름을 제공합니다.

    {
      "en-US": {
        "url": "http://www.example.com",
        "displayname": "Example",
        "name": "example"
      }
    }
  13. SAML 서비스 공급자 기술 연락처 필드에서 서비스 공급자에 대한 기술 담당자의 이름 및 이메일 주소를 지정합니다.

    {
    "givenName": "Some User",
    "emailAddress": "suser@example.com"
    }
  14. SAML 서비스 공급자 지원 연락처 필드에서 서비스 공급자에 대한 지원 담당자의 이름 및 이메일 주소를 지정합니다.

    {
    "givenName": "Some User",
    "emailAddress": "suser@example.com"
    }
  15. 선택 사항: SAML 서비스 공급자 추가 구성 데이터 필드에서 추가 구성 데이터를 제공합니다. 예를 들어 추가 보안을 위해 서명 요청을 사용하도록 선택할 수 있습니다.

    {
    "sign_request": True,
    }

    이 필드는 API의 SOCIAL_AUTH_SAML_SP_EXTRA 와 동일합니다. 자세한 내용은 OneLogin' SAML Python Toolkit 에서 유효한 서비스 공급자 추가(SP_EXTRA) 매개변수에 대해 알아보십시오.

  16. 선택 사항: SAML 보안 구성 필드에서 보안 설정을 제공합니다. 이 필드는 API의 SOCIAL_AUTH_SAML_SECURITY_CONFIG 필드와 동일합니다.

    // Indicates whether the <samlp:AuthnRequest> messages sent by this SP // will be signed. [Metadata of the SP will offer this info]
    "authnRequestsSigned": false,
    
    // Indicates a requirement for the <samlp:Response>, <samlp:LogoutRequest> // and <samlp:LogoutResponse> elements received by this SP to be signed.
    "wantMessagesSigned": false,
    
    // Indicates a requirement for the <saml:Assertion> elements received by // this SP to be signed. [Metadata of the SP will offer this info]
    "wantAssertionsSigned": false,
    
    // Authentication context.
    // Set to false and no AuthContext will be sent in the AuthNRequest,
    // Set true or don't present this parameter and you will get an AuthContext 'exact' 'urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport'
    // Set an array with the possible auth context values: array ('urn:oasis:names:tc:SAML:2.0:ac:classes:Password', 'urn:oasis:names:tc:SAML:2.0:ac:classes:X509'),
    "requestedAuthnContext": true,

    자세한 내용 및 추가 옵션은 OneLogin의 SAML Python Toolkit 을 참조하십시오.

  17. 선택 사항: SAML IDP에서 extra_data 속성 매핑 필드에 IDP 속성을 extra_data 속성에 매핑하는 값을 입력합니다. 이러한 값에는 매핑할 이메일 또는 Username과 같은 표준 속성 이외의 추가 사용자 정보가 포함됩니다. 예를 들면 다음과 같습니다.

    - Department
    - UserType
    - Organization

    포함할 수 있는 값에 대한 자세한 내용은 고급 SAML 설정을 참조하십시오.

    중요

    모든 항목이 구성에 맞게 올바르게 매핑되도록 모든 관련 값을 포함해야 합니다. 또는 추가 Authenticator 필드에 GET_ALL_EXTRA_DATA: true 를 추가하여 사용 가능한 모든 SAML IdP 특성을 매핑할 수 있습니다.

  18. 성공적인 로그인 시 조직, 사용자 및 팀을 자동으로 생성하려면 Create objects 를 선택합니다.
  19. 생성 시 이 인증 방법을 활성화하려면 Enabled 를 선택합니다.
  20. 이 소스에서 인증할 때 이전에 추가한 그룹의 사용자를 제거하려면 사용자 제거를 선택합니다.
  21. 인증 메서드 생성을 클릭합니다.
중요

Operator 기반 배포에서 SAML에 대한 HTTPS 리디렉션을 구성하여 사용자의 로그인을 간소화할 수 있습니다. 이 설정을 구성하는 단계는 OpenShift Container Platform의 플랫폼 게이트웨이에 대한 SSO(Single Sign-On) 활성화를 참조하십시오.

2.5.3.1. 투명한 SAML 로그인 구성

투명한 로그인이 작동하려면 먼저 IdP 시작 로그인이 실행되어야 합니다.

프로세스

  • IdP의 RelayState 를 "IdP"로 설정합니다.
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 문서 정보

Legal Notice

Theme

© 2026 Red Hat
맨 위로 이동