Windows資格情報マネージャー
Windows資格情報マネージャーにシークレットを保存して取得
最終更新
Windows資格情報マネージャーにシークレットを保存して取得
最終更新
Windows資格情報マネージャーはネイティブのWindowsユーティリティで、パスワードやシークレットなどの機密情報を保存し、アプリケーションが安全にアクセスできるようにします。
Keeperでは、ネイティブ Windows API と連携して Windows 資格情報マネージャーのシークレットを保存および取得するユーティリティであるWindows資格情報ユーティリティを用意しています。このユーティリティは、あらゆる統合、プラグイン、コードベースで使用でき、Windows資格情報マネージャーの資格情報、シークレット、パスワードをシンプルかつネイティブに保存および取得できます。
Windows資格情報ユーティリティのコードベースは、以下の場所にあります。
上記のユーティリティを使用するために必要なバイナリは、以下の場所にあります。
Windows資格情報ユーティリティを使用するには、以下のいずれかを実行します。
リリースページからビルド済みのバイナリをデプロイする
コードベースにインポートする
両方の使用例について以下で説明します。
リリースページから最新バージョンの実行ファイルをダウンロードし、必要に応じてPATHに追加して開始します。
実行ファイルで2つのコマンドがサポートされています。
set
get
どちらのコマンドも、最初の引数としてアプリケーションname
(Windows資格情報マネージャーに保存される資格情報の名前) が必要です。
set
set
では保存するシークレットの2番目の引数が必要となり、以下のいずれかとなります。
BASE64文字列
JSON文字列
既存のJSONファイルへのパス
get
get
は、保存されているBASE64でエンコードされた構成をstdout
に返し、0
の終了コードで終了します。要求元の統合では、出力をキャプチャして使用できます。構成の取得中にエラーが発生した場合、non-zero
の終了コードが返され、stderr
に書き込まれます。
このユーティリティは、Nuget経由でコードベースにインストールできます。
以下のように、コードベースにインポートできます。
set
Windows資格情報マネージャーに書き込むには、CredentialManager
オブジェクトのWriteCredential
メソッドを使用できます。これにより、現在のユーザーの資格情報マネージャーのシークレットが書き込まれ、上書きされます。
資格情報マネージャーにシークレットを正常に追加するには、3つの引数を指定する必要があります。
まず、アプリケーション名 (シークレットの参照に使用)、ユーザーのユーザー名の文字列表現、シークレット自体で、以下のいずれかになります。
BASE64文字列
JSON文字列
既存のJSONファイルへのパス
get
資格情報マネージャーからシークレットを取得するには、アプリケーション名をReadCredential
メソッドに渡します。これにより、保存されているBASE64でエンコードされたシークレットが返されます。
シークレットが Windows資格情報マネージャーに保存される際、まずBASE64形式にエンコードされます (まだ BASE64 文字列でない場合)。これにより保存形式が標準化され、Keeperの統合機能および製品での利用が容易になります。
シークレットが Windows資格情報マネージャーに保存される際、まずBASE64形式にエンコードされます (まだ BASE64 文字列でない場合)。これにより保存形式が標準化され、Keeperの統合機能および製品での利用が容易になります。