14.2. Ansible을 사용하여 속성에 RBAC 권한이 있는지 확인
IdM(Identity Management)의 시스템 관리자는 IdM 역할 기반 액세스 제어(RBAC)를 사용자 지정할 수 있습니다.
다음 절차에서는 권한에 추가할 수 있도록 Ansible 플레이북을 사용하여 IdM에 권한이 있는지 확인하는 방법을 설명합니다. 이 예제에서는 다음 대상 상태를 확인하는 방법을 설명합니다.
- MyPermission 권한이 있습니다.
- MyPermission 권한은 호스트를 추가하는 데만 사용할 수 있습니다.
권한이 포함된 권한이 부여된 사용자에게 호스트 항목에서 다음 가능한 모든 작업을 수행할 수 있습니다.
- 쓰기
- 읽기
- 검색
- 비교
- 추가
- 삭제
-
MyPermission 권한이 포함된 권한이 부여된 사용자가 생성한 호스트 항목에
설명
값이 있을 수 있습니다.
권한을 생성하거나 수정할 때 지정할 수 있는 속성 유형은 IdM LDAP 스키마에 의해 제한되지 않습니다. 그러나 object_type
이 나중에 호스트가
면 attrs: car_licence
를 지정하면 ipa가 발생합니다. ERROR: 속성 "car-license"는 권한을 행사하고 호스트에 특정 차량 라이선스 값을 추가하려고 할 때
오류 메시지를 허용하지 않습니다.
사전 요구 사항
제어 노드에서 다음을 수행합니다.
- Ansible 버전 2.13 이상을 사용하고 있습니다.
-
ansible-freeipa
패키지가 설치되어 있습니다. - 이 예제에서는 ~/MyPlaybooks/ 디렉터리에서 IdM 서버의 FQDN(정규화된 도메인 이름)을 사용하여 Ansible 인벤토리 파일을 생성했다고 가정합니다.
-
이 예제에서는 secret.yml Ansible vault가
ipaadmin_password
를 저장한다고 가정합니다.
-
ansible-freeipa
모듈이 실행되는 노드인 대상 노드는 IdM 도메인의 일부인 IdM 클라이언트, 서버 또는 복제본입니다.
프로세스
~/MyPlaybooks/ 디렉터리로 이동합니다.
cd ~/MyPlaybooks/
$ cd ~/MyPlaybooks/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow /usr/share/doc/ansible-freeipa/playbooks/permission/
디렉터리에 있는permission-present.yml
파일의 사본을 만듭니다.cp /usr/share/doc/ansible-freeipa/playbooks/permission/permission-present.yml permission-present-with-attribute.yml
$ cp /usr/share/doc/ansible-freeipa/playbooks/permission/permission-present.yml permission-present-with-attribute.yml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
편집할
permission-present-with-attribute.yml
Ansible 플레이북 파일을 엽니다. ipapermission
작업 섹션에서 다음 변수를 설정하여 파일을 조정합니다.-
사용 사례에 맞게 작업
이름을
조정합니다. -
ipaadmin_password
변수를 IdM 관리자의 암호로 설정합니다. -
name
변수를 권한 이름으로 설정합니다. -
object_type
변수를host
로 설정합니다. -
올바른
변수를모두
로 설정합니다. -
attrs
변수를description
로 설정합니다.
현재 예에 대해 수정된 Ansible 플레이북 파일입니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
사용 사례에 맞게 작업
- 파일을 저장합니다.
Ansible 플레이북을 실행합니다. 플레이북 파일을 지정하고 secret.yml 파일을 보호하는 암호를 저장하는 파일 및 인벤토리 파일을 지정합니다.
ansible-playbook --vault-password-file=password_file -v -i inventory permission-present-with-attribute.yml
$ ansible-playbook --vault-password-file=password_file -v -i inventory permission-present-with-attribute.yml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow