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