設定

自動化およびCLIを使用するためのCommander設定ファイルについて

Commander設定ファイル

Commanderに初めてログインすると、config.jsonファイルが作成されます (存在しない場合)。Commanderをアプリケーションとして起動すると、MacOSおよびLinuxの場合は~/.keeperに、Windowsの場合はC:\Users[USERNAME].keeperに設定ファイルが作成されます。 コマンドラインまたはターミナルからCommanderを使用する場合、--configオプションで別の場所を指定しない限り、config.jsonファイルはカレントディレクトリに作成されます。

設定ファイルの例

{
    "server": "keepersecurity.eu",
    "user": "services@company.com",
    "password": "your_password_here",
    "private_key": "yaeK4jMeIGNkSR2pi4xf2XGmYM094YMUoE8-QEW9CAA",
    "device_token": "g6RDMxr1t-bcVdBeBpz-xQ",
    "mfa_duration": "forever",
    "proxy": "http://proxy_user:proxy_password@host:port",
    "sso_master_password": false,
    "skip_records": false,
    "debug": false,
    "plugins": [],
    "commands": [],
    "timedelay":0
}

設定ファイルのオプション

  • server Keeperデータセンターのリージョン

    Commanderのデフォルトは米国リージョンであるため、他のリージョンでホストされているお客様は、設定でサーバーを指定する必要があります。

    リージョン「server」のプロパティ設定

    US

    https://keepersecurity.com

    EU

    https://keepersecurity.eu

    AU

    https://keepersecurity.com.au

    GOV

    https://govcloud.keepersecurity.us

    CA

    https://keepersecurity.ca

    JP

    https://keepersecurity.jp

  • debug 詳細な暗号出力とネットワークロギングを有効または無効にします。

    • trueまたはfalseに設定

  • plugins 読み込むパスワードローテーションプラグインを設定します。

    • Commanderのパスワードローテーションプラグインの詳細についてはこちらをご参照ください。

  • commands 実行するKeeperコマンドのカンマ区切りリスト

  • timedelay 指定したコマンドをX秒ごとに実行します。

    • 例: "timedelay":600は10分ごとにコマンドを実行します。

  • private_key 新しいデバイスでCommanderによって生成されたデバイスの秘密鍵。 この鍵は、ボルトデータの暗号化と復号化に使用されます。

  • device_token 新しいデバイスごとにバックエンドによって生成されるデバイストークン。デバイストークンは、デバイスを一意に識別するために使用され、セッションの動作を制御します。

  • proxy プロキシURL: schema://[user:password@]host:port ここでスキーマは以下のとおりです

    • http HTTPプロキシ

    • socks5 ローカルDNSを使用したSOCKS5プロキシ

    • socks4 ローカルDNSを使用したSOCKS4プロキシ

    • socks4a リモートDNSを使用したSOCKS4プロキシ

    • socks5h リモートDNSを使用したSOCKS5プロキシ

  • sso_master_password Enterprise SSOアカウントのマスターパスワードログインを強制します

  • skip_records 値がtrueに設定されている場合、記録の同期を禁止します。非常に大きなボルトを持つユーザーの場合、これにより、記録の完全な同期を必要とせずに、ログインしてコマンドを実行できます。ログイン後に記録の同期を強制するには、sync-down --forceを使用します。 config.jsonの行の例: "skip_records":true,

設定ファイルからのコマンドの実行

commandsフィールドを使用すると、ログイン時に所定のコマンドを実行できます。

実行するKeeper Commanderコマンドのカンマ区切りリストを入力します。例:

config.json
{
 ...
 "commands": ["sync-down", "file-report -d"]
 ...
}

この例では、同期してから、ボルト内の利用可能なファイルのレポートをダウンロードします。

設定ファイルの場所

バイナリインストーラーからCommanderを起動した場合、設定ファイルは「.keeper」という名前のフォルダのユーザーのホームディレクトリにあります。

  • Mac環境では、設定ファイルは~/.keeper/config.jsonにあります。

  • Windows環境では、設定ファイルは/Users/{Username}/Documents/.keeper/config.jsonにあります。

pip3またはソースインストールからCommanderを使用する場合、設定ファイルは、Commander実行可能プログラムが起動される現在のフォルダに作成されます。

Commanderの起動時に使用する設定ファイルを指定できます。次に例を示します。

$ keeper shell --config /path/to/config.json

マルチサーバー環境での認証

複数のサーバーまたは動的サーバーがある環境では、すべてのフィールドが入力され、デバイス識別子が「承認済み」であれば、各インスタンスに同じconfig.jsonファイルを使用できます。

config.jsonファイルの例:

{
    "user": "service@company.com",
    "password":"RANDOM_LONG_PASSWORD",
    "server": "https://keepersecurity.com",
    "private_key": "yaeK4jMeIGNkSR2pi4xf2XGmYM094YMUoE8-QEW9CAA",
    "device_token": "g6RDMxr1t-bcVdBeBpz-xQ"
}

デバイス承認手順を少なくとも1回実行している限り、この設定ファイルは任意の数のサーバーにロードできます。

このファイルを複数のインスタンスに配布する場合は、クラウドインフラストラクチャが提供する安全なストレージサービスを利用して、このファイルを保護することをお勧めします。また、IP範囲に基づいて制限されているKeeper管理コンソールのロール強制ポリシーにユーザーアカウントを割り当てることもお勧めします。

永続ログインセッション

永続ログインを使用すると、Commanderデバイスは、設定ファイルに「パスワード」を入力することなくKeeperに対して認証できます。これは、自動化スクリプトや他のソフトウェアからCommanderを呼び出す場合に便利です。

この機能を有効にするには、デバイスを登録し、永続ログイン設定を有効にする必要があります。この手順が完了すると、指定した設定ファイルで次にログインしたときに、セッションが再開されて、ユーザーは自動的にログインします。セッションを自動的に再開するために、config.jsonファイルにはトークンが複数保存されています。

永続ログイン設定を作成

デバイスで365日間 (最大) の永続ログインを有効にするコマンド

My Vault> this-device register
My Vault> this-device persistent-login on
My Vault> this-device ip-auto-approve on
My Vault> this-device timeout 365d
My Vault> quit

値として秒 (たとえば、60秒は60) または数字と文字 (たとえば、1分は1m、5時間は5h、7日は7d) を使用できます。

また、「logout」と入力するとセッションが無効になることにもご注意ください。終了するには、Commanderセッションを単に「quit」します。

デバイスに永続ログインを設定すると、ローカルフォルダのconfig.jsonは以下のようになります。

{
    "private_key":"8n0OqFi9o80xGh06bPzxTV1yLeKa5BdWc7f7CffZRQ",
    "device_token":"R2O5wkajo5UjVmbTmvWnwzf7DK1g_Yf-zZ3dWIbKPOng",
    "clone_code": "retObD9F0-WDABaUUGhP0Q",
    "user": "me@company.com",
    "server": "keepersecurity.com"
}

設定ファイルを変更して、コマンドの自動実行などの機能を利用することもできます。詳細は、設定ドキュメントをご参照ください。

永続ログインセッションはいくつでも作成できます。ただし、永続セッションオプションは、動的マルチサーバー環境を対象としたものではありません。複数のサーバーで設定ファイルをそのまま共有している場合、2番目のサーバーにログインしようとすると、永続ログインは失敗します。

動的マルチサーバー環境の場合は、前のセクション (完全に入力して各インスタンスに配布する設定ファイルを使用) をご参照ください。

永続ログインでのコマンドの実行

様々な設定を維持したい場合は、設定ファイルを指定してCommanderを実行できます。たとえば、次のコマンドはログインプロンプトを表示せずにCLIを開きます。

$ keeper --config=my_config.json shell

CLIを終了するには、「logout」ではなく「quit」と入力してください。「logout」と入力するとセッションが失効し、新しい永続セッション設定の作成が必要になります。

もう1つの例では、ログインプロンプトを表示せずに特定のコマンドを実行します。以下の例では、新しい記録が1行で自動的に作成されます。

$ keeper --config=config_demo.json "add --login myuser -g --url https://google.com -t 'Google'"

STDINを使用したバッチモード

一連のコマンドを一括で実行し、ファイルをCommanderのSTDINにパイプすることができます。たとえば、以下の行を含むtest.cmdという名前のテキストファイルを作成します。

add --login=user@gmail.com --pass=somemasterpass --url=https://google.com --force "Some Record Title"
upload-attachment --file="/path/to/some/file.txt" "Some Record Title"
share-record --email="user@company.com" --write "Some Record Title"

このファイルをバッチモードで実行する手順は以下のとおりです。

cat test.cmd | keeper --batch-mode -

または

keeper test.cmd

エラー処理

コマンドがエラーを返すと、バッチ実行は異常終了します。コマンドエラーが発生しないようにするには、コマンドの前に@を使用します。

add --login=user@gmail.com --pass=somemasterpass --url=https://google.com --force "Some Record Title"
@upload-attachment --file="/path/to/some/file.txt" "Some Record Title"
share-record --email="user@company.com" --write "Some Record Title"

Windowsのバッチモード

Windowsのコマンドラインを使用して、3つのコマンドを実行する方法を以下に例示します。

(echo ls -l && echo whoami && echo tree) | keeper --batch-mode -

バッチモードと永続ログインの組み合わせ

前のセクションで言及したように、永続的なログイン設定を指定するとログインのプロンプトを表示せずに一連のバッチコマンドを実行できます。以下に例を示します。

$ keeper --config=my_config.json bunch_of_commands.cmd

CLIからのバッチモード

Keeperは、コマンドを手軽に逐次実行できるCLI内からのバッチモードをサポートしています。

このコマンドは「run-batch」と呼ばれ、以下のようにして実行できます。

My Vault> run-batch -d 10 "C:\My Drive\Keeper\commands.txt"

この例では、各コマンドは10秒の遅延を挟んで実行されます。

Linux環境では、以下のようにパスを指定することもできます。

My Vault> run-batch -d 5 "/path/to/file.txt"

保護されたストレージに設定を保存

機密性の高い設定ファイルのパラメータ (user、password、server、device_token、private_key、clone_code) は、サードパーティ製のシークレットマネージャまたはハードウェアセキュリティモジュールにオプションで保存できます。

保護されたストレージを使用するには、config_storageプロパティを設定ファイルに追加します。config_storageの値はURL形式です。ストレージのURL形式については、以下の該当するセクションをご参照ください。

Commanderでは、以下の保護されたストレージがサポートされています。

最終更新