PowerShellプラグイン

PowerShellのSecret Managementモジュールを利用して、Keeper Secrets Manager PowerShellプラグインでシークレットにアクセス

機能

  • PowerShellで使用するシークレットをKeeperボルトから取得します

  • KeeperボルトをPowerShell Secrets Managerと連携します

  • PowerShellからKeeperボルトのシークレットの値を更新します

  • Keeperボルトからファイルを取得します

Keeper Secrets Manager機能の完全なリストについては、概要をご参照ください。

前提条件

このページでは、Secrets ManagerとPowerShellとの連携について説明します。 この連携を利用するための必要条件は以下のとおりです。

Secrets Managerには、PowerShellバージョン6以降が必要です。Microsoftは、PowerShellバージョン6以降をバージョン5以前とは別のアプリケーションとして配布しています。

インストールの詳細は、Microsoftのドキュメントをご参照ください。

概説

Keeper Secrets Manager PowerShellプラグインは、Microsoft PowerShellのSecret Managementモジュールを利用して、KeeperボルトからPowerShellスクリプトにシークレットを注入します。

Keeper Secrets Manager拡張機能は、新規または既存のPowerShell Secret Managementワークフローにシークレットのボルトとして追加するように簡単に設定できます。

PowerShell Secret Managementの詳細は、GitHubページのPowerShellドキュメントをご参照ください。

インストール

1. PowerShell Secret Managementモジュールのインストール

Keeper Secrets Managerは、Microsoft.PowerShell.SecretManagementモジュールを使用して、PowerShellのシークレットを管理します。

PowerShellを使用してインストール:

Install-Module -Name Microsoft.PowerShell.SecretManagement

その他のインストールオプションについては、PowerShellギャラリーをご参照ください。

2. PowerShell用Keeper Secrets Managerのインストール

PowerShellギャラリーからKeeper Secrets Manager PowerShell拡張機能をインストールします。

Install-Module -Name SecretManagement.Keeper

その他のインストールオプションについては、PowerShellギャラリーページを参照するか、GitHubでソースコードを検索してください。

SecretManagementを更新するには、次のコマンドを使用します。Update-Module -Name SecretManagement.Keeper

3. PowerShell Secret Management拡張機能のインストール

使用したいシークレット拡張機能がローカルにすでにインストール済みの場合は、この手順を省略できます。

Keeper Secrets Manager PowerShellプラグインには、プラグインの設定をローカルマシンに格納するためのシークレット管理拡張機能が必要です。

Keeperは、Microsoft.Powershell.SecretStoreまたはSecretManagement.KeyChainを推奨しています

Install-Module -Name Microsoft.Powershell.SecretStore

4. 設定の保管に使用するボルトの登録

使用したいシークレットのボルトがローカルにすでに登録済みの場合は、この手順を省略できます。

Keeper Secrets Managerプラグインの設定を格納できるように、以前にインストールしたシークレット管理拡張機能用のシークレットのボルトを登録します。

Register-SecretVault -Name LocalStore `
-ModuleName Microsoft.Powershell.SecretStore

このボルトの名前は、Keeper拡張機能の登録に使用されます。この例ではLocalStoreを使用しました。

Secret Management拡張機能をローカルストレージに使用すると、ローカルボルトに安全にアクセスするためのパスワードの作成を求められる場合があります。

システム設定によっては、PowerShellが外部モジュールを信頼できるようにする必要があります。 そのためには、以下のコマンドを実行します。

set-executionpolicy remotesigned

5. Keeperボルトの登録

クレデンシャルを保存するために上記で登録したローカルボルトと、Keeperに接続するためのワンタイムトークンを使用して、Keeper Secrets Managerボルトを登録します。

以下の「XXX」をワンタイムトークンに置き換えてください。

Register-KeeperVault -Name Keeper `
-LocalVaultName LocalStore `
-OneTimeToken XXX 

6.Keeperボルトをデフォルトのシークレットの保存先として設定(オプション)

追加したばかりのKeeperボルトをシークレットの既定の保存先として設定します。 これにより、シークレットを取得および設定するときに、ご利用のKeeperボルトを使用するようにPowerShell SecretsManagementモジュールに指示されます。

Set-SecretVaultDefault keeper

この手順はオプションですが、設定しないと、同じ名前のシークレットがある場合、既定のボルトから受信する可能性があり、Set-Secretコマンドに-Vault <keeper vault name>-Vault keeperなど)を追加する必要があります。

これで、Keeper Secrets Manager PowerShellプラグインを使用する準備ができました

ソースコード

GitHubリポジトリでKeeper Secrets Manager PowerShellプラグインのソースコードを検索します。

使用方法

Keeper Secrets Manager PowerShellプラグインの最も一般的な使用方法の説明と例を以下にご紹介します。

PowerShell Secret Managementのコマンドの詳細は、GitHubページのPowerShellドキュメントをご参照ください。

シークレットを一覧表示

以下のPowerShellコマンドを実行して、Keeperのシークレットの一覧を表示します

Get-SecretInfo -Vault <KEEPER VAULT NAME>

Keeperシークレットのボルトに設定された名前を使用します。上記の例では、Keeperを使用しています。

表示されるシークレットは、Secrets Managerアプリケーションと共有されるあらゆる記録です。 「名前(Name)」列には、各記録のUIDとタイトルが表示されます。

個々のシークレットを取得

個々のシークレットの情報と値を取得

Get-Secret <RECORD NAME or UID> -AsPlainText

記録名にスペースが使用されている場合は、引用符で囲みます。

-AsPlainTextを指定すると、シークレットの実際の値が表示されます。 指定しない場合は、SecureStringとして表示されます。

シークレットから値を取得

Keeperドット記法を利用して、アクセスするフィールドを識別します。 'keeper://'プレフィックスは必要ないことにご注意ください。

Get-Secret <RECORD NAME OR UID>.<FIELD> -AsPlainText

シークレットに値を設定

シークレットの個々のフィールドの値を更新

Set-Secret <RECORD NAME OR UID>.<FIELD> <VALUE TO SET>

Keeperボルトがシークレットの既定のボルトとして設定されていない場合は

-Vault <keeper vault name>をコマンドに追加します

ファイルのダウンロード

Keeperボルト内のシークレットに添付されたファイルを指定するには、ドット記法を使用します。 次に、そのファイルをSet-Contentコマンドに渡してダウンロードします。

Get-Secret <RECORD NAME OR UID>.files[<FILENAME>] `
| Set-Content -Path <FILE PATH> -AsByteStream

指定したファイルは、Set-Contentに渡したパスの場所にダウンロードされます

最終更新