CLI パスワード コンシューマを使用するためのエンドポイントの設定
目次
cminder12902jp
目次
CLI パスワード コンシューマはソフトウェア開発キット パスワード コンシューマの一種です。 CLI のパスワード コンシューマを使用して、スクリプト内のハードコードされたパスワードを特権アカウント パスワードに置き換えることができます。 CLI のパスワード コンシューマは、特権アカウント パスワードを取得し、特権アカウント パスワードをチェックアウトまたはチェックインするスクリプトの表現形です。 このスクリプトは、
Privileged Identity Manager
エンタープライズ コンソール から特権アカウント パスワードを取得する SAM エージェントを呼び出します。他のファイルまたはスクリプトを変更する機能に制限がある .bat または .sh スクリプトを書き込むには、CLI のパスワード コンシューマを使用します。 たとえば、手動でファイル内のハードコードされたパスワードを更新するために acpwd ユーティリティを使用するスクリプトに書き込むことができます。 また、CLI のパスワード コンシューマを使用して、ユーザにエンドポイント上のコマンド ラインから acpwd ユーティリティを実行させることもできます。
注:
スクリプト内のハードコードされたパスワードを特権アカウント パスワードに置き換えるには、SAM SDK を使用することもできます。 たとえば、複数のファイル内のパスワードを置き換えるカスタマイズされたスクリプトに書き込むには、SAM SDK を使用します。CLI のパスワード コンシューマを使用するためにエンドポイントを設定する方法
- SAM の統合機能が有効になっているエンドポイントにPrivileged Identity Managerがインストールされていることを確認します。
- スクリプトに以下のコマンドを追加します。acpwd {-checkout | -get} -account name -ep name -eptype type [-container name] -nologo注:acpwd ユーティリティの構文の詳細については、「リファレンス ガイド」を参照してください。
- コマンド(特権アカウント パスワード)の出力を使用するように、ユーザのスクリプトを変更します。CLI のパスワード コンシューマを使用するためにエンドポイントを設定しました。 次に、Privileged Identity Managerエンタープライズ コンソールのスクリプト用の Software Development Kit (SDK/CLI) パスワード コンシューマを作成する必要があります。
CLI のパスワード コンシューマのしくみ
CLI のパスワード コンシューマを使用して、スクリプト内のハードコードされたパスワードを特権アカウント パスワードに置き換えることができます。 CLI のパスワード コンシューマは、特権アカウント パスワードの取得、特権アカウント パスワードをチェックアウト、またはチェックインするために acpwd ユーティリティを使用するスクリプトの表現形です。 また、CLI のパスワード コンシューマを使用して、ユーザにエンドポイント上のコマンド ラインから acpwd ユーティリティを実行させることもできます。 CLI のパスワード コンシューマが acpwd ユーティリティの使用に役立つしくみを把握します。
注:
スクリプト内、またはコマンド ラインから acpwd ユーティリティを使用するには、まず Privileged Identity Manager
エンタープライズ コンソール内にスクリプトまたはユーティリティを Software Development Kit (SDK/CLI) パスワード コンシューマとして定義する必要があります。 パスワード コンシューマは、特権アカウント パスワードの取得を許可されているユーザのリストを定義します。以下のプロセスに、CLI のパスワード コンシューマが動作するしくみを説明します。
- エンドポイント上の acpwd ユーティリティは以下のいずれかの方法で呼び出されます。
- ユーザは、コマンド プロンプト ウィンドウからユーティリティを実行します。
- スクリプトまたはアプリケーション サーバが実行され、ユーティリティを呼び出します。
- acpwd ユーティリティは特権アカウント パスワードを要求します。 SAM エージェントは、承認のため、Privileged Identity Managerエンタープライズ コンソールに、リクエストを転送します。
- Privileged Identity Managerエンタープライズ コンソールは特権アカウント パスワードをエンドポイントに送信します。 SAMエージェントはパスワードを表示するか元のプログラムに転送し、確認メッセージを記録します。
- スクリプトまたはアプリケーション サーバ、またはPrivileged Identity Managerエンタープライズ コンソール は、アカウント パスワードをチェックインします。また、SAM エージェントは確認メッセージを記録します。
- SAM エージェントは、チェックインが正常に行われたことを示す確認メッセージを記録します。注:ゼロ(0)を含む確認メッセージは、 SAM エージェントによるパスワードの取得の成功、チェックアウト、またはチェックインを示します。 acpwd ユーティリティの構文の詳細については、「リファレンス ガイド」を参照してください。
パスワードを取得するスクリプトの例
以下に、Windows 上の特権アカウント パスワードを取得するスクリプトの例の抜粋を示します。 この例では、 SAM エージェントが
Privileged Identity Manager
エンドポイントにインストールされていると仮定します。このスクリプト例は、
Privileged Identity Manager
エンタープライズ コンソール から取得した特権アカウント パスワードを使用して、Windowsへの レジストリのエントリの追加および削除を試行します。set AdminUser=PowerUser FOR /F "tokens=*" %%i IN ('"C:\Program Files\AccessControl\bin\acpwd.exe" -get -account PowerUser -ep comp1_123 -eptype "Windows Agentless" -container "Windows Accounts" -nologo') DO SET AdminPassword=%%i set runasadmin="C:\utils\psexec.exe" -u %AdminUser% -p %runasadmin% %AdminPassword% REG ADD "HKLM\SOFTWARE\PUPM Registry" %runasadmin% %AdminPassword% REG DELETE "HKLM\SOFTWARE\PUPM Registry" /F
この例では、スクリプトが SAM エージェントを実行して特権アカウント パスワードを取得します
。
このスクリプトには、アカウント名(PowerUser)、
エンドポイント名(comp1_123
)、エンドポイント タイプ(Windows Agentless
)、ユーザのコンテナ名(Windows Accounts
)が含まれています。 このスクリプトは、パスワードだけを表示するようにSAMエージェントに指示し、そのパスワードを使用して管理者ユーザとして PsExec プログラムを実行し、レジストリ エントリを追加および削除します。