55.5. IdM 클라이언트에서 명령을 서비스 계정으로 실행하는 CLI에서 sudo 규칙 생성
IdM에서는 RunAs 별칭 을 사용하여 sudo 규칙을 구성하여 sudo 명령을 다른 사용자 또는 그룹으로 실행할 수 있습니다. 예를 들어 데이터베이스 애플리케이션을 호스팅하는 IdM 클라이언트가 있을 수 있으며 해당 애플리케이션에 해당하는 로컬 서비스 계정으로 명령을 실행해야 합니다.
이 예제를 사용하면 idm _ 라는 명령줄에서 user 계정이 _reportidmclient 호스트에서 타사 서비스 계정으로 third-party-app/opt/third-party-app/bin/report 명령을 실행할 수 있도록 run_sudo 규칙을 만듭니다.
사전 요구 사항
- IdM 관리자로 로그인했습니다.
-
IdM에서
idm_user에 대한 사용자 계정을 생성하고 사용자의 암호를 만들어 계정의 잠금을 해제했습니다. CLI를 사용하여 새 IdM 사용자를 추가하는 방법에 대한 자세한 내용은 명령줄을 사용하여 사용자 추가를 참조하십시오. -
idm계정이 없습니다.client호스트에 로컬 idm_useridm_user사용자는 로컬/etc/passwd파일에 나열되지 않습니다. -
idmclient호스트에third-party-app이라는 사용자 지정 애플리케이션이 설치되어 있어야 합니다. -
third-party-app애플리케이션의report명령은/opt/third-party-app/bin/report디렉터리에 설치됩니다. -
이라는 로컬 서비스 계정을 생성했습니다.타사-애플리케이션 애플리케이션에대한 명령을 실행하기 위한 third partyapp
절차
IdM
관리자로Kerberos 티켓을 검색합니다.kinit admin
[root@idmclient ~]# kinit adminCopy to Clipboard Copied! Toggle word wrap Toggle overflow /opt/third-party-app/bin/report명령을sudo명령의 IdM 데이터베이스에 추가합니다.ipa sudocmd-add /opt/third-party-app/bin/report ---------------------------------------------------- Added Sudo Command "/opt/third-party-app/bin/report" ---------------------------------------------------- Sudo Command: /opt/third-party-app/bin/report
[root@idmclient ~]# ipa sudocmd-add /opt/third-party-app/bin/report ---------------------------------------------------- Added Sudo Command "/opt/third-party-app/bin/report" ---------------------------------------------------- Sudo Command: /opt/third-party-app/bin/reportCopy to Clipboard Copied! Toggle word wrap Toggle overflow run_third-party-app_report라는sudo규칙을 만듭니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow users
=<user>옵션을 사용하여sudorule-add-runasuser명령에 RunAs 사용자를 지정합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 로컬 서비스 계정 또는 Active Directory 사용자와 같이 IdM 외부에 지정된 사용자(또는
--groups=*)는 IdM 외부에 있을 수 있습니다. 그룹 이름에 대해%접두사를 추가하지 마십시오./opt/ bad-party-app/bin/report명령을run_knative-party-app_report규칙에 추가합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow IdM
idmclient호스트에run_third-party-app_report규칙을 적용합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow idm_user계정을run_third-party-app_report규칙에 추가합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow
서버에서 클라이언트로 변경 사항을 전파하는 데 몇 분이 걸릴 수 있습니다.
검증 단계
-
idmclient 호스트에 idm_user계정으로 로그인합니다. 새 sudo 규칙을 테스트합니다.
idm_user계정이 수행할 수 있는sudo규칙을 표시합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow third partyapp서비스 계정으로report명령을 실행합니다.sudo -u thirdpartyapp /opt/third-party-app/bin/report [sudo] password for idm_user@idm.example.com: Executing report... Report successful.
[idm_user@idmclient ~]$ sudo -u thirdpartyapp /opt/third-party-app/bin/report [sudo] password for idm_user@idm.example.com: Executing report... Report successful.Copy to Clipboard Copied! Toggle word wrap Toggle overflow