4.5. IdM API コマンドを使用したホストベースのアクセス制御の管理
以下の例は、IdM API コマンドを使用してホストベースのアクセス制御 (HBAC) を管理する方法の一般的なシナリオを示しています。
IdM API コマンドを使用した HBAC の管理の例
- HBAC ルールの作成
この例では、SSH サービスアクセスを処理する基本ルールを作成します。
api.Command.hbacrule_add("sshd_rule")api.Command.hbacrule_add("sshd_rule")Copy to Clipboard Copied! Toggle word wrap Toggle overflow - HBAC ルールへのユーザーの追加
この例では、ユーザー
johnをsshd_ruleHBAC ルールに追加します。api.Command.hbacrule_add_user("sshd_rule", user="john")api.Command.hbacrule_add_user("sshd_rule", user="john")Copy to Clipboard Copied! Toggle word wrap Toggle overflow - HBAC ルールへのグループの追加
この例では、グループ
developersをsshd_ruleHBAC ルールに追加します。api.Command.hbacrule_add_user("sshd_rule", group="developers")api.Command.hbacrule_add_user("sshd_rule", group="developers")Copy to Clipboard Copied! Toggle word wrap Toggle overflow - HBAC ルールからのユーザーの削除
この例では、ユーザー
johnをsshd_ruleHBAC ルールから削除します。api.Command.hbacrule_remove_user("sshd_rule", user="john")api.Command.hbacrule_remove_user("sshd_rule", user="john")Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 新しいターゲット HBAC サービスの登録
ターゲットサービスを HBAC ルールに割り当てる前に、ターゲットサービスを登録する必要があります。この例では、
chronydサービスを登録します。api.Command.hbacsvc_add("chronyd")api.Command.hbacsvc_add("chronyd")Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 登録済みサービスの HBAC ルールへの割り当て
この例では、
sshdサービスをsshd_ruleHBAC ルールに割り当てます。このサービスはデフォルトで IPA に登録されているため、事前にhbacsvc_addで登録する必要はありません。api.Command.hbacrule_add_service("sshd_rule", hbacsvc="sshd")api.Command.hbacrule_add_service("sshd_rule", hbacsvc="sshd")Copy to Clipboard Copied! Toggle word wrap Toggle overflow - HBAC ルールへのホストの追加
この例では、
workstationsホストグループをsshd_ruleHBAC ルールに追加します。api.Command.hbacrule_add_host("sshd_rule", hostgroup="workstations")api.Command.hbacrule_add_host("sshd_rule", hostgroup="workstations")Copy to Clipboard Copied! Toggle word wrap Toggle overflow - HBAC ルールのテスト
この例では、
workstation.ipa.testホストに対してsshd_ruleHBAC ルールを使用します。ユーザーjohnからのサービスsshdをターゲットとしています。api.Command.hbactest(user="john", targethost="workstation.ipa.test", service="sshd", rules="sshd_rule")
api.Command.hbactest(user="john", targethost="workstation.ipa.test", service="sshd", rules="sshd_rule")Copy to Clipboard Copied! Toggle word wrap Toggle overflow - HBAC ルールの有効化
この例では、
sshd_ruleHBAC ルールを有効にします。api.Command.hbacrule_enable("sshd_rule")api.Command.hbacrule_enable("sshd_rule")Copy to Clipboard Copied! Toggle word wrap Toggle overflow - HBAC ルールの無効化
この例では、
sshd_ruleHBAC ルールを無効にします。api.Command.hbacrule_disable("sshd_rule")api.Command.hbacrule_disable("sshd_rule")Copy to Clipboard Copied! Toggle word wrap Toggle overflow