4.5. ユーザーのパーミッション設定

ユーザー hacluster 以外の特定のユーザーにもクラスターを管理するパーミッションを付与できます。個別のユーザーに付与できるパーミッションには以下の 2 セットあります。
  • 「ネットワーク上でのノードアクセスのパーミッション設定」 で説明しているように、個別のユーザーが Web UI からクラスターを管理でき、ネットワークからノードに接続できる pcs コマンドを実行可能なパーミッション。ネットワークカラノードに接続するコマンドには、クラスタをセットアップするコマンドや、クラスターからノードの追加または削除を行うコマンドが含まれます。
  • 「ACL を使用したローカルパーミッションの設定」 で説明しているように、クラスター設定への読み込み専用または書き込み専用アクセスをローカルユーザーに許可するパーミッション。ネットワークからの接続を必要としないコマンドには、リソースを作成して制約を設定するような、クラスター設定を編集するコマンドが含まれます。
両方のセットのパーミッションが割り当てられるような状況では、ネットワーク上で接続するコマンドのパーミッションが最初に適用され、ローカルノード上のクラスター設定を編集するパーミッションが次に適用されます。多くの pcs コマンドは、ネットワークアクセスを必要とせず、ネットワークパーミッションが適用されません。

4.5.1. ネットワーク上でのノードアクセスのパーミッション設定

Web UI からクラスターを管理し、ネットワークからノードに接続する pcs コマンドを実行するために、特定のユーザーにパーミッションを付与するには、これらのユーザーをグループ haclient に追加します。「クラスター管理パーミッションの設定」 で説明しているように、Web UI を使用することで、これらのユーザーにパーミッションを付与することができます。

4.5.2. ACL を使用したローカルパーミッションの設定

Red Hat Enterprise Linux 7.1 以降では、pcs acl コマンドを使用してローカルユーザーのパーミッションを設定し、アクセス制御リスト (ACL) を使用してクラスター設定への読み取り専用または読み書きアクセスを許可できます。また、「ACL の設定」 で説明しているように、pcsd Web UI を使用して ACL を設定することも可能です。デフォルトでは、root ユーザーと、haclient グループのメンバーのユーザーは、クラスター構成への完全なローカル読み込み/書き込みアクセスを持ちます。
以下の 2 つのステップにしたがって、ローカルユーザーのパーミッションを設定します。
  1. pcs acl role create... コマンドを実行して role を作成しそのロールのパーミッションを定義します。
  2. pcs acl user create コマンドで作成したロールをユーザーに割り当てます。
以下の例では rouser というローカルユーザーにクラスター設定に対する読み取り専用アクセスを与えています。
  1. この手順では、rouser ユーザーがローカルシステムに存在し、rouser ユーザーが haclient グループのメンバーである必要があります。
    # adduser rouser
    # usermod -a -G haclient rouser
  2. enable-acl クラスタープロパティを使って Pacemaker ACL を有効にします。
    # pcs property set enable-acl=true --force 
  3. cib に対して読み取り専用のパーミッションを持つ read-only という名前のロールを作成します。
    # pcs acl role create read-only description="Read access to cluster" read xpath /cib
  4. pcs ALC システムでユーザー rouser を作成し、read-only ロールをユーザーに割り当てます。
    # pcs acl user create rouser read-only
  5. 現在の ACL を表示させます。
    # pcs acl
    User: rouser
      Roles: read-only
    Role: read-only
      Description: Read access to cluster
      Permission: read xpath /cib (read-only-read)
次の例では wuser と言うローカルユーザーにクラスター設定に対する書き込みアクセスを与えています。
  1. この手順では、wuser ユーザーがローカルシステムに存在し、wuser ユーザーが haclient グループのメンバーである必要があります。
    # adduser wuser
    # usermod -a -G haclient wuser
  2. enable-acl クラスタープロパティを使って Pacemaker ACL を有効にします。
    # pcs property set enable-acl=true --force 
  3. cib に対して書き込みパーミッションを持つ write-access という名前のロールを作成します。
    # pcs acl role create write-access description="Full access" write xpath /cib
  4. pcs ACL システム内に wuser というユーザーを作成し、write-access ロールを割り当てます。
    # pcs acl user create wuser write-access
  5. 現在の ACL を表示させます。
    # pcs acl
    User: rouser
      Roles: read-only
    User: wuser
      Roles: write-access
    Role: read-only
      Description: Read access to cluster
      Permission: read xpath /cib (read-only-read)
    Role: write-access
      Description: Full Access
      Permission: write xpath /cib (write-access-write)
クラスター ACL の詳細については pcs acl コマンドのヘルプ画面を参照してください。