21.2. ACL でローカルパーミッションの設定
pcs acl
コマンドを使用して、ローカルユーザーにアクセス制御リスト (ACL) を使用してクラスター設定への読み取り専用アクセスまたは読み取り/書き込みアクセスを許可するパーミッションを設定できます。
デフォルトでは、ACL は有効になっていません。ACL が有効になっていない場合、すべてのノードの haclient
グループのメンバーである任意のユーザーには、クラスター設定へのローカルの読み取り/書き込みに関する完全なパーミッションが付与されます。一方、haclient
グループのメンバーではないユーザーには、パーミッションが付与されません。ただし、ACL が有効になっている場合は、haclient
グループのメンバーであっても、ACL からそのユーザーに付与されたものにしかアクセスできません。ACL が有効になっている場合でも、root および hacluster
ユーザーアカウントはクラスター設定に常にフルアクセスできます。
ローカルユーザーのパーミッションを設定するには、以下の 2 つの手順を実行します。
-
pcs acl role create…
コマンドを実行して、そのロールのパーミッションを定義する ロール を作成します。 -
pcs acl user create
コマンドで、作成したロールをユーザーに割り当てます。複数のロールを同じユーザーに割り当てると、拒否
パーミッションが優先されてから、書き込み
、読み取り
の順に適用されます。
手順
以下の例では、rouser
という名前のローカルユーザーに、クラスター設定に対する読み取り専用アクセスを提供します。設定の特定の部分のみにアクセスを制限することもできます。
この手順を root として実行するか、すべての設定の更新を作業ファイルに保存して、完了したらアクティブな CIB にプッシュできるようにすることが重要です。それ以外の場合は、それ以上変更を加えられないようにすることができます。作業ファイルに設定の更新を保存する方法は、作業ファイルへの設定変更の保存 を参照してください。
この手順では、
rouser
ユーザーがローカルシステムに存在し、rouser
ユーザーがhaclient
グループのメンバーであることが必要です。# adduser rouser # usermod -a -G haclient rouser
pcs acl enable
コマンドを使用して、Pacemaker ACL を有効にします。# pcs acl enable
cib に対して読み取り専用のパーミッションが付与されている
read-only
という名前のロールを作成します。# pcs acl role create read-only description="Read access to cluster" read xpath /cib
pcs ACL システムで
rouser
ユーザーを作成し、そのユーザーにread-only
ロールを割り当てます。# pcs acl user create rouser read-only
現在の ACL を表示します。
# pcs acl User: rouser Roles: read-only Role: read-only Description: Read access to cluster Permission: read xpath /cib (read-only-read)
rouser
がpcs
コマンドを実行する各ノードでrouser
としてログインし、ローカルのpcsd
サービスに対して認証します。これは、ACL ユーザーとしてpcs status
などの特定のpcs
コマンドを実行する場合に必要になります。[rouser ~]$ pcs client local-auth