Saltstack-access-control-system
SaltStack-アクセス制御システム
アクセス制御システムは、グループのユーザーが許可付きでタスクを実行するためのオプションを提供します。 Saltアクセス制御システムは、非管理制御インターフェースへのアクセスを構成するために使用されます。 このプロセスをすべてのシステムに適用できます。 このコントロールは、非管理ユーザーがSaltコマンドを実行するのに役立ちます。
ソルトインターフェイスは、次の3つのタイプです-
- パブリッシャーACLシステム
- 外部認証システム
- ピアシステム
これらの各インターフェースの詳細を理解してみましょう。
パブリッシャーACLシステム
パブリッシャーACLシステムでは、ルート以外のユーザーにアクセスして、マスターからのミニオンに対してSaltコマンドを実行できます。 パブリッシャーACLシステムは、 publisher_acl 構成オプションを介してマスター構成ファイルで構成されます。 次のように定義されます-
publisher_acl:
user1:
- .*
user2:
- web*:
- test.*
- pkg.*
ここに、
- user1 は何でも実行できます。
- user2 は test および pkg を使用できますが、「web *」ミニオンでのみ使用できます。
外部認証システム
*external auth system* は、 *PAM、LDAP* などの外部認証システムを介して特定のミニオンでsaltコマンドを実行するアクセスを提供するために使用されます この構成ファイルは、以下で説明するようにマスターファイルで定義されます。
external_auth:
pam:
user1:
- 'web*':
- test.*
- network.*
user2:
- .*
ここに、
- user1 は、 web ターゲットに一致するミニオンで *test および* networkモジュール*の関数を実行できます。
- user2 はすべての機能を実行できます。
コマンドで外部認証システムを有効にする
ソルトサーバーは、外部認証を有効にするオプション「–a」を提供します。
salt -a pam web\* test.ping
ここでは、-a pam *オプションを使用してPAM外部認証を有効にします。 Salt Serverは、コマンドを実行するたびに認証の詳細を要求します。 Salt Serverが初めて認証の詳細を要求するのを制限するために、Tオプションを使用できます。 この -Tオプション*は、今後12時間(デフォルト設定)の認証詳細をキャッシュし、それを使用してユーザーを認証します。
salt -T -a pam web\* test.ping
ピアシステム
ソルトミニオンは、ピアインターフェイスを使用してコマンドを渡すことができます。 ピアインターフェイスは、 peer 構成セクションを使用してミニオンがマスターからコマンドを送信できるようにするか、 peer_run 構成を使用してマスターからランナーを実行できるように、マスター構成ファイルで構成されます。
これら両方の構成を詳細に理解しましょう。
ピア構成
マスターファイルで定義される単純な構成は以下のとおりです-
peer:
.*:
- .*
ここでは、すべてのミニオンの通信を可能にしますが、非常に安全な環境にのみお勧めします。
ミニオンを特定のIDに割り当てるには、構成を次のように定義する必要があります。peer-
.*domain.com:
- test.*
peer_runの構成
この設定は、マスターファイルのpeer_runオプションを使用して、ミニオンがマスターからランナーを実行できるようにするためです。 次の例は、すべてのミニオンとすべてのランナーへのアクセスを許可します。
peer_run:
.*:
- .*
ミニオンを特定のIDに割り当てるには、以下に示すように構成を定義する必要があります-
peer_run:
.*domain.com:
- test.*
コマンドの実行方法
すべての手先で test.ping を実行するには、 publish.publish モジュールとともに salt-call コマンドを使用します。
salt-call publish.publish \* test.ping
*runner* を実行するには、 *publish.runner* モジュールとともにsalt-callコマンドを使用します。
salt-call publish.runner manage.up