第11章 Ansible Playbook を使用した IdM でのセルフサービスルールの管理


Ansible を使用してセルフサービスアクセスルールを定義し、Identity Management (IdM) ユーザーが自身のディレクトリーエントリーの特定の属性を変更できるようにします。

11.1. Ansible を使用してセルフサービスルールを存在させる

Ansible を使用して Identity Management (IdM) にセルフサービスルールを作成し、ユーザーが自身のディレクトリーエントリーの表示名やイニシャルなどの特定の属性を変更できるようにします。

以下の例では、新しいルール Users can manage their own name details (ユーザーに自分の名前の情報を管理することを許可) により、ユーザーに自分の givennamedisplaynametitle、および initials 属性を変更する権限を付与します。これにより、たとえば、ユーザーは必要に応じて表示名やイニシャルを変更できるようになります。

前提条件

  • コントロールノード:

    • Ansible バージョン 2.15 以降を使用している。
    • ansible-freeipa パッケージがインストールされている。
    • ~/MyPlaybooks/ ディレクトリーに、IdM サーバーの完全修飾ドメイン名 (FQDN) を使用して Ansible インベントリーファイル が作成されている (この例の場合)。
    • secret.yml Ansible vault に ipaadmin_password が保存されており、secret.yml ファイルを保護するパスワードを格納しているファイルにアクセスできる (この例の場合)。
  • ターゲットノード (freeipa.ansible_freeipa モジュールが実行されるノード) が、IdM クライアント、サーバー、またはレプリカとして IdM ドメインに含まれている。

手順

  1. ~/MyPlaybooks/ ディレクトリーに移動します。

    $ cd ~/MyPlaybooks/
  2. /usr/share/ansible/collections/ansible_collections/freeipa/ansible_freeipa/playbooks/selfservice/ ディレクトリーにある selfservice-present.yml ファイルのコピーを作成します。

    $ cp /usr/share/ansible/collections/ansible_collections/freeipa/ansible_freeipa/playbooks/selfservice/selfservice-present.yml selfservice-present-copy.yml
  3. 編集する Ansible Playbook ファイル (selfservice-present-copy.yml) を開きます。
  4. freeipa.ansible_freeipa.ipaselfservice タスクセクションで次の変数を設定して、ファイルを変更します。

    • name 変数は、新しいセルフサービスルールの名前に設定します。
    • permission 変数は、付与するパーミッションをコンマ区切りのリスト (read および write) で設定します。
    • attribute 変数は、ユーザーが管理できる属性 (givennamedisplaynametitle、および initials) をリストとして設定します。

    以下は、今回の例で使用するように変更した Ansible Playbook ファイルです。

    ---
    - name: Self-service present
      hosts: ipaserver
    
      vars_files:
      - /home/user_name/MyPlaybooks/secret.yml
      tasks:
      - name: Ensure self-service rule "Users can manage their own name details" is present
        freeipa.ansible_freeipa.ipaselfservice:
          ipaadmin_password: "{{ ipaadmin_password }}"
          name: "Users can manage their own name details"
          permission: read, write
          attribute:
          - givenname
          - displayname
          - title
          - initials
  5. ファイルを保存します。

    FreeIPA Ansible コレクション内の変数とサンプル Playbook の詳細は、コントロールノードの /usr/share/ansible/collections/ansible_collections/freeipa/ansible_freeipa/README-selfservice.md ファイルと /usr/share/ansible/collections/ansible_collections/freeipa/ansible_freeipa/playbooks/selfservice ディレクトリーを参照してください。

  6. Ansible Playbook を実行します。Playbook ファイル、secret.yml ファイルを保護するパスワードを格納するファイル、およびインベントリーファイルを指定します。

    $ ansible-playbook --vault-password-file=password_file -v -i inventory selfservice-present-copy.yml
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る