36장. Ansible 플레이북을 사용하여 IdM에서 RBAC 권한 관리
RBAC(역할 기반 액세스 제어)는 역할, 권한 및 권한에 대해 정의된 정책 중립 액세스 제어 메커니즘입니다. 특히 대규모 회사에서 RBAC를 사용하면 개별 책임이 있는 관리자의 계층적 시스템을 생성하는 데 도움이 될 수 있습니다.
Ansible 플레이북을 사용하여 IdM(Identity Management)에서 RBAC 권한을 관리할 때 수행할 수 있는 작업에 대해 알아봅니다.
사전 요구 사항
- RBAC의 개념과 원칙을 이해하고 있습니다.
36.1. Ansible을 사용하여 RBAC 권한이 있는지 확인 링크 복사링크가 클립보드에 복사되었습니다!
IdM(Identity Management)의 시스템 관리자는 IdM 역할 기반 액세스 제어(RBAC)를 사용자 지정할 수 있습니다.
다음 절차에서는 권한에 추가할 수 있도록 Ansible 플레이북을 사용하여 IdM에 권한이 있는지 확인하는 방법을 설명합니다. 이 예제에서는 다음 대상 상태를 확인하는 방법을 설명합니다.
-
MyPermission권한이 있습니다. -
MyPermission권한은 호스트에만 적용할 수 있습니다. 권한이 포함된 사용자에게 권한이 부여된 사용자는 항목에 대해 다음과 같은 가능한 작업을 모두 수행할 수 있습니다.
- 쓰기
- 읽기
- 검색
- 비교
- 추가
- 삭제
사전 요구 사항
제어 노드에서 다음을 수행합니다.
- 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-copy.yml
$ cp /usr/share/doc/ansible-freeipa/playbooks/permission/permission-present.yml permission-present-copy.ymlCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
편집할
permission-present-copy.ymlAnsible 플레이북 파일을 엽니다. ipapermission작업 섹션에서 다음 변수를 설정하여 파일을 조정합니다.-
사용 사례에 맞게 작업
이름을조정합니다. -
ipaadmin_password변수를 IdM 관리자의 암호로 설정합니다. -
name변수를 권한 이름으로 설정합니다. -
object_type변수를host로 설정합니다. -
올바른변수를모두로 설정합니다.
현재 예에 대해 수정된 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-copy.yml
$ ansible-playbook --vault-password-file=password_file -v -i inventory permission-present-copy.ymlCopy to Clipboard Copied! Toggle word wrap Toggle overflow