4.4. IdM API 명령을 사용하여 sudo 규칙 관리
아래 예제에서는 IdM API 명령을 사용하여 sudo 규칙을 관리하는 방법에 대한 일반적인 시나리오를 보여줍니다.
IdM API 명령을 사용하여 sudo 규칙을 관리하는 예
- sudo 규칙 생성
이 예제에서는 시간 변경 명령을 포함하는 sudo 규칙을 만듭니다.
api.Command.sudorule_add("timechange")api.Command.sudorule_add("timechange")Copy to Clipboard Copied! Toggle word wrap Toggle overflow - sudo 명령 생성
이 예제에서는
datesudo 명령을 만듭니다.api.Command.sudocmd_add("/usr/bin/date")api.Command.sudocmd_add("/usr/bin/date")Copy to Clipboard Copied! Toggle word wrap Toggle overflow - sudo 규칙에 sudo 명령 연결
이 예제에서는
datesudo 명령을timechangesudo 규칙에 연결합니다.api.Command.sudorule_add_allow_command("timechange", sudocmd="/usr/bin/date")api.Command.sudorule_add_allow_command("timechange", sudocmd="/usr/bin/date")Copy to Clipboard Copied! Toggle word wrap Toggle overflow - sudo 명령 그룹 생성 및 연결
이 예제에서는 여러 sudo 명령을 만들고 새로 생성된
timecmdssudo 명령 그룹에 추가한 후 그룹을timechangesudo 규칙에 연결합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - sudo 명령 거부
이 예제에서는
rm명령이 sudo로 실행되도록 거부합니다.api.Command.sudocmd_add("/usr/bin/rm") api.Command.sudorule_add_deny_command("timechange", sudocmd="/usr/bin/rm")api.Command.sudocmd_add("/usr/bin/rm") api.Command.sudorule_add_deny_command("timechange", sudocmd="/usr/bin/rm")Copy to Clipboard Copied! Toggle word wrap Toggle overflow - sudo 규칙에 사용자 추가
이 예제에서는 사용자
bob을timechangesudo 규칙에 추가합니다.api.Command.sudorule_add_user("timechange", user="bob")api.Command.sudorule_add_user("timechange", user="bob")Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 지정된 호스트에서만 sudo 규칙을 사용할 수 있도록 설정
이 예에서는
client.ipa.test호스트에서만 사용할 수 있도록시간 변경규칙을 제한합니다.api.Command.sudorule_add_host("timechange", host="client.ipa.test")api.Command.sudorule_add_host("timechange", host="client.ipa.test")Copy to Clipboard Copied! Toggle word wrap Toggle overflow - sudo 규칙을 다른 사용자로 실행하도록 설정
기본적으로 sudo 규칙은
root로 실행됩니다. 이 예제에서는 대신alice사용자로 실행할timechangesudo 규칙을 설정합니다.api.Command.sudorule_add_runasuser("timechange", user="alice")api.Command.sudorule_add_runasuser("timechange", user="alice")Copy to Clipboard Copied! Toggle word wrap Toggle overflow - sudo 규칙을 그룹으로 실행하도록 설정
이 예제에서는
sysadmins그룹으로 실행되도록timechangesudo 규칙을 설정합니다.api.Command.sudorule_add_runasgroup("timechange", group="sysadmins")api.Command.sudorule_add_runasgroup("timechange", group="sysadmins")Copy to Clipboard Copied! Toggle word wrap Toggle overflow - sudo 규칙에 대한 sudo 옵션 설정
이 예제에서는
timechangesudo 규칙에 대해 sudo 옵션을 설정합니다.api.Command.sudorule_add_option("timechange", ipasudoopt="logfile='/var/log/timechange_log'")api.Command.sudorule_add_option("timechange", ipasudoopt="logfile='/var/log/timechange_log'")Copy to Clipboard Copied! Toggle word wrap Toggle overflow - sudo 규칙 활성화
이 예제에서는
timechangesudo 규칙을 활성화합니다.api.Command.sudorule_enable("timechange")api.Command.sudorule_enable("timechange")Copy to Clipboard Copied! Toggle word wrap Toggle overflow - sudo 규칙 비활성화
이 예제에서는
timechangesudo 규칙을 비활성화합니다.api.Command.sudorule_disable("timechange")api.Command.sudorule_disable("timechange")Copy to Clipboard Copied! Toggle word wrap Toggle overflow