Ansible Automation Platform을 위한 중앙 인증 설치 및 구성

Red Hat Ansible Automation Platform 2.1

Ansible Automation Platform의 중앙 인증 기능 활성화

Red Hat Customer Content Services

초록

피드백 제공:
이 문서를 개선하기 위한 제안이 있거나 오류를 발견한 경우, Docs 구성 요소를 사용하여 Ansible Automation Platform Jira 프로젝트에서 문제를 생성하기 위해 기술 지원에 문의하십시오 https://access.redhat.com.

머리말

Ansible Automation Platform 중앙 인증은 타사 ID 공급자(idP) 솔루션으로 Ansible Automation Platform 전체에서 사용할 수 있는 간소화된 SSO(Single Sign-On) 솔루션을 사용할 수 있습니다. 플랫폼 관리자는 중앙 인증을 사용하여 연결 및 인증을 테스트하고 새 사용자를 생성하고 그룹에 할당하여 사용자 권한을 관리할 수 있습니다. OpenID Connect 기반 및 LDAP 지원과 함께 중앙 인증은 고객 사용량을 부트스트랩하는 데 사용할 수 있는 지원되는 REST API도 제공합니다.

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

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 용어를 교체하기 위해 최선을 다하고 있습니다. 먼저 마스터(master), 슬레이브(slave), 블랙리스트(blacklist), 화이트리스트(whitelist) 등 네 가지 용어를 교체하고 있습니다. 이러한 변경 작업은 작업 범위가 크므로 향후 여러 릴리스에 걸쳐 점차 구현할 예정입니다. 자세한 내용은 CTO Chris Wright의 메시지를 참조하십시오.

1장. 자동화 허브를 위한 Ansible Automation Platform 중앙 인증

자동화 허브에 대한 Ansible Automation Platform 중앙 인증을 활성화하려면 Red Hat Ansible Automation Platform 설치 프로그램을 다운로드하여 이 가이드에 설명된 대로 필요한 설정 절차를 진행합니다.

중요

이 가이드의 설치 프로그램은 기본 독립 실행형 배포에 대한 중앙 인증을 설치합니다. 독립 실행형 모드는 하나의 중앙 인증 서버 인스턴스만 실행하므로 클러스터된 배포에는 사용할 수 없습니다. 독립 실행형 모드는 드라이브를 테스트하고 중앙 인증 기능으로 플레이하는 데 유용할 수 있지만 단일 장애 지점만 있으므로 프로덕션에서 독립 실행형 모드를 사용하는 것은 권장되지 않습니다.

다른 배포 모드에서 중앙 인증을 설치하려면 이 가이드에서 자세한 배포 옵션을 참조하십시오.

1.1. 시스템 요구 사항

Ansible Automation Platform 중앙 인증을 설치하고 실행하는 데 필요한 몇 가지 최소 요구 사항이 있습니다.

  • Java를 실행하는 모든 운영 체제
  • Java 8 JDK
  • zip 또는 gzip 및 tar
  • 최소 512mb의 RAM
  • 최소 1GB의 디스크 공간
  • 클러스터에서 중앙 인증을 실행하려면 PostgreSQL, MySQL, Oracle 등과 같은 공유 외부 데이터베이스입니다. 자세한 내용은 이 가이드의 데이터베이스 구성 섹션 을 참조하십시오.
  • 클러스터에서 실행하려는 경우 시스템에서 네트워크 멀티 캐스트를 지원합니다. 중앙 인증은 멀티 캐스트 없이 클러스터될 수 있지만 여기에는 몇 가지 구성 변경이 필요합니다. 자세한 내용은 이 가이드의 클러스터링 섹션 을 참조하십시오.
  • Linux에서 /dev/urandom 을 임의의 데이터 소스로 사용하여 사용 가능한 엔트로피 부족으로 인해 중앙 인증 중단을 방지하는 것이 좋습니다. /dev/random 사용은 보안 정책에 의해 필요하지 않습니다. Oracle JDK 8 및 OpenJDK 8에서 이를 수행하려면 시작 시 java.security.egd 시스템 속성을 file:/dev/urandom 로 설정합니다.

1.2. 자동화 허브와 함께 사용할 수 있도록 Ansible Automation Platform 중앙 인증 설치

Ansible Automation Platform 중앙 인증 설치는 Red Hat Ansible Automation Platform 설치 프로그램에 포함됩니다. 다음 절차를 사용하여 Ansible Automation Platform을 설치한 다음 Ansible Automation Platform 및 중앙 인증을 모두 설치하도록 인벤토리 파일에 필요한 매개변수를 구성합니다.

1.2.1. Red Hat Ansible Automation Platform 설치 프로그램 선택 및 가져오기

Red Hat Enterprise Linux 환경 인터넷 연결을 기반으로 필요한 Red Hat Ansible Automation Platform 설치 프로그램을 선택합니다. 아래 시나리오를 검토하고 Red Hat Ansible Automation Platform 설치 프로그램이 요구 사항을 충족하는지 확인합니다.

참고

Red Hat 고객 포털에서 Red Hat Ansible Automation Platform 설치 프로그램에 액세스하려면 유효한 Red Hat 고객 계정이 필요합니다.

인터넷으로 설치

Red Hat Enterprise Linux 환경이 인터넷에 연결되어 있는 경우 Red Hat Ansible Automation Platform 설치 프로그램을 선택합니다. 인터넷 액세스가 포함된 설치는 최신 필수 리포지토리, 패키지 및 종속성을 검색합니다.

  1. https://access.redhat.com/downloads/content/480로 이동합니다.
  2. Ansible Automation Platform <latest-version> 설정에 대해 지금 다운로드를 클릭합니다.
  3. 파일을 추출합니다.

    $ tar xvzf ansible-automation-platform-setup-<latest-version>.tar.gz

인터넷 액세스없이 설치

인터넷에 액세스할 수 없거나 온라인 리포지토리와 별도의 구성 요소 및 종속성을 설치하지 않는 경우 Red Hat Ansible Automation Platform Bundle 설치 프로그램을 사용합니다. Red Hat Enterprise Linux 리포지토리에 대한 액세스는 여전히 필요합니다. 기타 모든 종속 항목은 tar 아카이브에 포함되어 있습니다.

  1. https://access.redhat.com/downloads/content/480로 이동합니다.
  2. Ansible Automation Platform <latest-version> 설치 번들로 지금 다운로드를 클릭합니다.
  3. 파일을 추출합니다.

    $ tar xvzf ansible-automation-platform-setup-bundle-<latest-version>.tar.gz

1.2.2. Red Hat Ansible Automation Platform 설치 프로그램 구성

설치 프로그램을 실행하기 전에 설치 관리자 패키지의 인벤토리 파일을 편집하여 자동화 허브 및 Ansible Automation Platform 중앙 인증 설치를 구성합니다.

참고

[automationhub] 호스트의 사용 가능한 IP 주소를 제공하여 사용자가 다른 노드에서 Private Automation Hub에서 콘텐츠를 동기화하고 새 이미지를 컨테이너 레지스트리로 푸시할 수 있도록 합니다.

  1. 설치 프로그램 디렉터리로 이동합니다.

    1. 온라인 설치 관리자:

      $ cd ansible-automation-platform-setup-<latest-version>
    2. 번들 설치 프로그램:

      $ cd ansible-automation-platform-setup-bundle-<latest-version>
  2. 텍스트 편집기를 사용하여 인벤토리 파일을 엽니다.
  3. [automationhub] 에서 인벤토리 파일 매개변수를 편집하여 자동화 허브 호스트 설치를 지정합니다.

    1. 자동화 허브 위치에 IP 주소 또는 FQDN을 사용하여 [automationhub] 아래에 그룹 호스트 정보를 추가합니다.
    2. automationhub_admin_password,automation_pg_password 및 설치 사양에 따라 추가 매개변수에 대한 암호를 입력합니다.
  4. sso_keystore_password 필드에 암호를 입력합니다.
  5. [SSO] 아래의 인벤토리 파일 매개변수를 편집하여 중앙 인증을 설치할 호스트를 지정합니다.

    1. sso_console_admin_password 필드에 암호를 입력하고 설치 사양에 따라 추가 매개변수를 입력합니다.

1.2.3. Red Hat Ansible Automation Platform 설치 프로그램 실행

인벤토리 파일을 업데이트한 상태에서 설치 프로그램 패키지에 있는 setup.sh 플레이북을 사용하여 설치 프로그램을 실행합니다.

  1. setup.sh 플레이북을 실행합니다.

    $ ./setup.sh

1.2.4. 중앙 인증 관리자로 로그인

Red Hat Ansible Automation Platform이 설치되면 인벤토리 파일에 지정한 admin 자격 증명을 사용하여 중앙 인증 서버에 관리자로 로그인합니다.

  1. Ansible Automation Platform 중앙 인증 인스턴스로 이동합니다.
  2. 인벤토리 파일에서 지정한 admin 자격 증명을 사용하여 sso_console_admin_usernamesso_console_admin_password 필드에서 로그인합니다.

Ansible Automation Platform 중앙 인증이 성공적으로 설치되고 admin 사용자가 로그인하면 다음 절차를 사용하여 사용자 스토리지 공급자(예: LDAP)를 추가할 수 있습니다.

2장. Ansible Automation Platform 중앙 인증에 사용자 스토리지 공급자(LDAP/Kerberos) 추가

Ansible Automation Platform 중앙 인증에는 기본 제공 LDAP/AD 공급자가 함께 제공됩니다. LDAP 데이터베이스에서 사용자 속성을 가져올 수 있도록 중앙 인증에 LDAP 공급자를 추가할 수 있습니다.

사전 요구 사항

  • SSO 관리자로 로그인되어 있습니다.

절차

  1. Ansible Automation Platform 중앙 인증에 SSO 관리자로 로그인합니다.
  2. 탐색 모음에서 구성 섹션사용자 페더레이션 을 선택합니다.
  3. Add provider 라는 드롭다운 메뉴를 사용하여 LDAP 공급자를 선택하여 LDAP 구성 페이지로 이동합니다.

다음 표에는 LDAP 구성에 사용할 수 있는 옵션이 나열되어 있습니다.

구성 옵션

설명

스토리지 모드

사용자를 중앙 인증 사용자 데이터베이스로 가져오려면 On 으로 설정합니다. 자세한 내용은 이 섹션 을 참조하십시오.

편집 모드

관리자가 사용자 메타데이터에 수행할 수 있는 수정 사항 유형을 결정합니다. 자세한 내용은 이 섹션 을 참조하십시오.

콘솔 표시 이름

관리 콘솔에서 이 공급자를 참조할 때 사용되는 이름

우선 순위

사용자를 검색하거나 사용자를 추가할 때 이 공급자의 우선 순위

동기화 등록

관리 콘솔에서 Ansible Automation Platform 중앙 인증으로 생성된 새 사용자 또는 등록 페이지가 LDAP에 추가되도록 하려면 활성화

Kerberos 인증 허용

LDAP에서 프로비저닝된 사용자 데이터를 사용하여 영역에서 Kerberos/SPEGO 인증을 활성화합니다. 자세한 내용은 이 섹션 을 참조하십시오.

3장. 자동화 허브 관리자 권한 할당

Hub 관리 사용자는 사용자 권한 및 그룹을 관리하려면 hubadmin 역할을 할당해야 합니다. Ansible Automation Platform 중앙 인증 클라이언트를 통해 hubadmin 의 역할을 사용자에게 할당할 수 있습니다.

사전 요구 사항

  • 사용자 스토리지 공급자(예: LDAP)가 중앙 인증에 추가되었습니다.

절차

  1. SSO 클라이언트의 ansible-automation-platform 영역으로 이동합니다.
  2. 탐색 모음에서 사용자+관리를 선택합니다.
  3. ID를 클릭하여 목록에서 사용자를 선택합니다.
  4. Role Mappings 탭을 클릭합니다.
  5. Client Roles 아래의 드롭다운 메뉴를 사용하여 automation-hub 를 선택합니다.
  6. Available Roles (사용 가능한 역할) 필드에서 hubadmin 을 클릭한 다음 Add selected > 를 클릭합니다.

사용자는 이제 hubadmin 입니다. 3-6단계를 반복하여 추가 사용자에게 hubadmin 역할을 할당합니다.

4장. Ansible Automation Platform 중앙 인증에 ID 브로커 추가

Ansible Automation Platform Central Authentication은 소셜 및 프로토콜 기반 공급자를 모두 지원합니다. 중앙 인증에 ID 브로커를 추가하여 사용자가 Google, Facebook, GitHub 등과 같은 기존 소셜 네트워크 계정을 사용하여 로그인할 수 있도록 할 수 있습니다.

참고

지원되는 소셜 네트워크 목록과 해당 네트워크를 사용하도록 설정하는 방법에 대한 자세한 내용은 이 섹션을 참조하십시오.

프로토콜 기반 공급자는 사용자를 인증하고 권한을 부여하기 위해 특정 프로토콜을 사용하는 공급자입니다. 이를 통해 특정 프로토콜과 호환되는 모든 ID 공급자에 연결할 수 있습니다. Ansible Automation Platform Central Authentication은 SAML v2.0 및 OpenID Connect v1.0 프로토콜을 지원합니다.

절차

  1. admin 사용자로 Ansible Automation Platform 중앙 인증에 로그인합니다.
  2. 사이드 탐색 모음의 Configure 섹션에서 Identity Providers 를 클릭합니다.
  3. Add provider 라는 드롭다운 메뉴를 사용하여 ID 공급자를 선택하여 ID 공급자 구성 페이지로 이동합니다.

다음 표에는 ID 공급자 구성에 사용할 수 있는 옵션이 나열되어 있습니다.

표 4.1. ID 브로커 구성 옵션

구성 옵션

설명

별칭

별칭은 ID 공급자의 고유 식별자입니다. 내부적으로 ID 공급자를 참조하는 데 사용됩니다. OpenID Connect 와 같은 일부 프로토콜에는 ID 공급자와 통신하기 위해 리디렉션 URI 또는 콜백 URL이 필요합니다. 이 경우 별칭을 사용하여 리디렉션 URL을 빌드합니다.

enabled

공급자를 설정/오프합니다.

로그인 페이지에서 숨기기

활성화되어 있는 경우 이 공급자는 로그인 페이지에 로그인 옵션으로 표시되지 않습니다. 클라이언트는 로그인을 요청하는 데 사용하는 URL에 kc_idp_hint 매개변수를 사용하여 이 공급자를 사용하도록 요청할 수 있습니다.

계정 연결만

이 공급자를 사용하여 로그인할 수 없으며 로그인 페이지에 옵션으로 표시되지 않습니다. 기존 계정은 이 공급자와 계속 연결할 수 있습니다.

저장소 토큰

ID 공급자로부터 수신된 토큰을 저장할지 여부입니다.

읽기 가능한 저장된 토큰

사용자가 저장된 ID 공급자 토큰을 검색할 수 있는지 여부입니다. 이는 브로커 클라이언트 수준 역할 읽기 토큰에도 적용됩니다.

신뢰 이메일

ID 공급자가 제공한 이메일 주소를 신뢰할 수 있는지의 여부입니다. 영역에 이메일 검증이 필요한 경우 이 IDP에서 로그인하는 사용자는 이메일 확인 프로세스를 통과할 필요가 없습니다.

GUI 순서

사용 가능한 IDP가 로그인 페이지에 표시되는 방식을 정렬하는 순서 번호입니다.

첫 번째 로그인 워크플로우

이 IDP를 통해 중앙 인증에 로그인하는 사용자에 대해 트리거될 인증 흐름을 선택합니다.

로그인 후 흐름

사용자가 외부 ID 공급자의 로그인을 완료한 후 트리거되는 인증 흐름을 선택합니다.

4.1. Ansible Automation Platform 중앙 인증을 사용하여 그룹 권한 관리

사용자 그룹에 특정 권한을 할당하여 Ansible Automation Platform에서 사용자 액세스를 관리할 수 있습니다. 사용자가 Ansible Automation Platform에 처음 로그인하면 해당 그룹이 자동화 허브의 사용자 액세스 페이지에 표시되어 각 그룹에 사용자 액세스 및 권한을 할당할 수 있습니다.

4.1.1. 그룹에 권한 할당

사용자가 시스템의 특정 기능에 액세스할 수 있도록 하는 자동화 허브의 그룹에 권한을 할당할 수 있습니다.

사전 요구 사항

hubadmin 사용자로 로그인되어 있습니다.

절차

  1. 로컬 자동화 허브에 로그인합니다.
  2. 그룹으로 이동합니다.
  3. 그룹 이름을 클릭합니다.
  4. 편집 을 클릭합니다.
  5. 권한 유형의 필드를 클릭하고 목록에 표시되는 권한을 선택합니다.
  6. 권한 할당이 완료되면 저장 을 클릭합니다.

그룹은 할당된 권한과 연결된 자동화 허브의 기능에 액세스할 수 있습니다.

4.1.2. Automation Hub 권한

권한은 각 그룹이 지정된 오브젝트에서 수행하는 정의된 작업 집합을 제공합니다. 다음 권한에 따라 그룹에 필요한 액세스 수준을 결정합니다.

표 4.2. 권한 참조 테이블

개체권한설명

namespace

네임스페이스 추가

네임스페이스로 업로드

네임스페이스 변경

네임스페이스 삭제

이러한 권한이 있는 그룹은 네임스페이스를 생성, 업로드 또는 삭제할 수 있습니다.

collections

Ansible 리포지터리 콘텐츠 수정

컬렉션 삭제

이 권한이 있는 그룹은 Approval 기능을 사용하여 리포지토리 간에 콘텐츠를 이동하고, 기능을 인증 또는 거부하여 스테이징 에서 게시 되거나 거부된 리포지토리인 abd 삭제 컬렉션으로 콘텐츠를 이동할 수 있습니다.

사용자

사용자 보기

사용자 삭제

사용자 추가

사용자 변경

이러한 권한이 있는 그룹은 자동화 허브에서 사용자 구성 및 액세스를 관리할 수 있습니다.

groups

그룹 보기

그룹 삭제

그룹 추가

그룹 변경

이러한 권한이 있는 그룹은 자동화 허브에서 그룹 구성 및 액세스를 관리할 수 있습니다.

컬렉션 원격

컬렉션 원격 변경

컬렉션 원격 보기

이러한 권한이 있는 그룹은 CollectionsRepo Management 로 이동하여 원격 리포지토리를 구성할 수 있습니다.

컨테이너

컨테이너 네임스페이스 권한 변경

컨테이너 변경

이미지 태그 변경

새 컨테이너 생성

기존 컨테이너로 푸시

컨테이너 리포지토리 삭제

이러한 권한이 있는 그룹은 자동화 허브에서 컨테이너 리포지토리를 관리할 수 있습니다.

원격 레지스트리

원격 레지스트리 추가

원격 레지스트리 변경

원격 레지스트리 삭제

이러한 권한이 있는 그룹은 자동화 허브에 원격 레지스트리를 추가, 변경 또는 삭제할 수 있습니다.

작업 관리

작업 변경

작업 삭제

모든 작업 보기

이러한 권한이 있는 그룹은 자동화 허브에서 작업 관리에 추가된 작업을 관리할 수 있습니다.

법적 공지

Copyright © 2023 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.