PowerShellプラグイン
PowerShellのSecrets Managerモジュールを利用して、KeeperシークレットマネージャーPowerShellプラグインでシークレットにアクセス
機能
Keeperボルトからシークレットを取得してPowerShellで使用
KeeperボルトをPowerShell Secrets Managerと統合
PowerShellからKeeperボルトのシークレット値を更新
Keeperボルトからファイルを取得
Keeperシークレットマネージャー機能の完全なリストについては、概要をご参照ください。
要件
本ページでは、シークレットマネージャーとPowerShellとの連携について説明します。 この連携を利用するための必要条件は以下のとおりです。
シークレットマネージャーには、PowerShellバージョン6以降が必要です。Microsoftは、PowerShellバージョン6以降をバージョン5以前とは別のアプリケーションとして配布しています。
インストールの詳細は、Microsoftのドキュメントをご参照ください。
PowerShellバージョン6.0以降
インストールの詳細は、Microsoftのドキュメントをご参照ください。
Keeperシークレットマネージャーへのアクセス (詳細は、クイックスタートガイドをご参照ください)
Keeperアカウントのシークレットマネージャーアドオンの有効化
シークレットマネージャー強制ポリシーが有効化されたロールを割り当てられたメンバーシップ
シークレットを共有するKeeperシークレットマネージャーアプリケーション
アプリケーションの作成手順については、クイックスタートガイドをご参照ください
概説
KeeperシークレットマネージャーPowerShellプラグインは、Microsoft PowerShellのSecret Managementモジュールを利用して、KeeperボルトからPowerShellスクリプトにシークレットを注入します。
Keeperシークレットマネージャー拡張機能は、新規または既存のPowerShell Secret Managementワークフローにシークレットのボルトとして追加するように簡単に設定できます。
PowerShell Secret Managementの詳細は、GitHubページのPowerShellドキュメントをご参照ください。
インストール
1. PowerShell Secret Managementモジュールのインストール
Keeperシークレットマネージャーは、Microsoft.PowerShell.SecretManagementモジュールを使用して、PowerShellのシークレットを管理します。
PowerShellを使用してインストール:
その他のインストールオプションについては、PowerShellギャラリーをご参照ください。
2. PowerShell用Keeperシークレットマネージャーのインストール
PowerShellギャラリーからKeeperシークレットマネージャーPowerShell拡張機能をインストールします。
その他のインストールオプションについては、PowerShellギャラリーページを参照するか、GitHubでソースコードを検索してください。
SecretManagementを更新するには、Update-Module -Name SecretManagement.Keeper
のコマンドを使用します。
3. PowerShell Secret Management拡張機能のインストール
使用したいシークレット拡張機能がローカルにすでにインストール済みの場合は、この手順を省略できます。
KeeperシークレットマネージャーPowerShellプラグインには、プラグインの設定をローカルマシンに格納するためのシークレット管理拡張機能が必要です。
Keeperは、Microsoft.Powershell.SecretStoreまたはSecretManagement.KeyChainを推奨しています
4. 設定の保管に使用するボルトの登録
使用したいシークレットのボルトがローカルにすでに登録済みの場合は、この手順を省略できます。
Keeperシークレットマネージャープラグインの設定を格納できるように、以前にインストールしたシークレット管理拡張機能用のシークレットのボルトを登録します。
このボルトの名前は、Keeper拡張機能の登録に使用されます。この例ではLocalStore
を使用しました。
Secret Management拡張機能をローカルストレージに使用すると、ローカルボルトに安全にアクセスするためのパスワードの作成を求められる場合があります。
システム設定によっては、PowerShellが外部モジュールを信頼できるようにする必要があります。 そのためには、以下のコマンドを実行します。
set-executionpolicy remotesigned
5. Keeperボルトの登録
クレデンシャルを保存するために上記で登録したローカルボルトと、Keeperに接続するためのワンタイムトークンを使用して、Keeperシークレットマネージャーボルトを登録します。
以下の「XXX」をワンタイムトークンに置き換えてください。
6. Keeperボルトをデフォルトのシークレットの保存先として設定 (オプション)
追加したばかりのKeeperボルトをシークレットの既定の保存先として設定します。 これにより、シークレットを取得および設定するときに、ご利用のKeeperボルトを使用するようにPowerShell SecretsManagementモジュールに指示されます。
この手順はオプションですが、設定しないと、同じ名前のシークレットがある場合、既定のボルトから受信する可能性があり、Set-Secret
コマンドに-Vault <keeper vault name>
(-Vault keeper
など)を追加する必要があります。
これで、KeeperシークレットマネージャーPowerShellプラグインを使用する準備ができました
ソースコード
GitHubリポジトリでKeeperシークレットマネージャーPowerShellプラグインのソースコードを検索します。
使用方法
KeeperシークレットマネージャーPowerShellプラグインの最も一般的な使用方法の説明と例を以下にご紹介します。
PowerShell Secret Managementのコマンドの詳細は、GitHubページのPowerShellドキュメントをご参照ください。
バージョン16.6.6以降、Get/Setコマンドでは、タイトル内のドットに対してエスケープ文字として「\」を使用できるようになりました。タイトルにドットが含まれている場合のみエスケープ文字を使用し、「.\」や「\\」のようにドット (.) とバックスラッシュ (\) の両方をエスケープしてください。
シークレットを一覧表示
以下のPowerShellコマンドを実行して、Keeperのシークレットの一覧を表示します
Keeperシークレットのボルトに設定された名前を使用します。上記の例では、Keeper
が使用されています。
表示されるシークレットは、シークレットマネージャーアプリケーションと共有されるすべてのレコードです。 「Name」列には、各レコードのUIDとタイトルが表示されます。
単一のシークレットを取得
単一のシークレットの情報と値を取得
レコード名にスペースが使用されている場合は、引用符で囲みます。
-AsPlainText
を指定すると、シークレットの実際の値が表示されます。 指定しない場合は、SecureString
として表示されます。
シークレットから値を取得
Keeperドット表記法を利用して、アクセスするフィールドを識別します。「keeper://」という接頭辞は必要ありません。
シークレットに値を設定
単一のシークレットのフィールドの値を更新
Keeperボルトがシークレットの既定のボルトとして設定されていない場合は
-Vault <keeperボルト名>
をコマンドに追加します。
ファイルのダウンロード
Keeperボルト内のシークレットに添付されたファイルを指定するには、ドット記法を使用します。 次に、そのファイルをSet-Content
コマンドに渡してダウンロードします。
指定したファイルは、Set-Content
に渡したパスの場所にダウンロードされます
最終更新