Secrets Manager CLI

Secrets Manager CLIを使用したボルトシークレットへのシェルアクセス

概要

Keeper Secrets Manager CLI(KSM CLI)を使用して、ターミナル、シェルスクリプト、シェルから起動できる任意のソフトウェアから、Secrets Managerボルトの基本的な操作をご利用になれます。

基本機能

  • Keeperボルトからシークレットを取得

  • Keeperボルトのシークレットを更新

  • スクリプトおよびコンテナ内の環境変数をKeeperシークレットへの置換

KSM CLIは、Commander CLIとは異なります。KSM CLIはシークレット管理専用であり、Commander CLIは初期設定および管理機能用です。

アプリケーションとクライアントデバイスの設定

Secrets Manager CLIまたはKeeperボルトに保存されたシークレットにアクセスするための環境変数置換を使用するには、まずアプリケーションとクライアントデバイスを設定する必要があります。 クイックスタートガイドを参照して設定してください。

Secrets Manager CLIのインストール

KSM CLIは、Windows/Mac/Linux用のバイナリアプリケーションとして、または任意のPython環境用のpip3インストールとして利用できます。

バイナリのインストール方法

最新のバイナリリリースは、GitHubリポジトリで入手できます。ご利用のオペレーティングシステムに合わせてインストーラーをダウンロードし、クリックしてインストールまたは解凍して使用します。

⬇️Secrets Manager CLIバイナリのダウンロード

WindowsまたはmacOSでCLIを起動すると、CLIはシェルモードで実行されます。ksmコマンドは、コマンドラインから引き続き利用できます。

Linuxバイナリは単なる実行可能ファイルなので、PATHの通ったディレクトリに移動する必要があります。

Pip3とPython3のインストール方法

Python 3.xがインストールされていることをご確認ください。 インストールされていない場合は、OS固有のパッケージマネージャを使用してインストールします。

sudo yum install python3

pip3が最新であることを確認します。

sudo pip3 install --upgrade pip

これで、Secrets Manager CLIをインストールできます。

sudo pip3 install keeper-secrets-manager-cli

最新バージョンにアップグレードするコマンド:

sudo pip3 install -U keeper-secrets-manager-cli keeper-secrets-manager-core

この方法でCLIをシステムのPythonにインストールします。rootまたは管理者権限がない場合は、virtualenvを設定してCLIをインストールできます。virtualenvを使用しない場合は、LinuxまたはmacOSでは、モジュールとバイナリは**$HOME/.localディレクトリにインストールされます。binディレクトリへのPATH**を通す必要があるでしょう。

virtualenvを使用したKSMのインストール

開発者にとって、virtualenvを使用することは、分離された環境にKSMをインストールするための優れた方法です。

sudo pip3 install virtualenv
virtualenv -p python3 my_env
source my_env/bin/activate

続いて、仮想環境にksmをインストールします

pip3 install keeper-secrets-manager-cli

ソースコード

GitHubリポジトリでKeeper Secrets Manager CLIのソースコードを検索します。

使用方法

ksm CLIツールは、以下の目的に使用できます。

  • Github Actionsなどの統合機能で使用するための設定ファイルの初期化(「init」)

  • クライアントデバイスとしてコマンドを実行するためのローカルプロファイルの作成(「profile」)

  • Keeperボルトの照会とシークレットの取得(「secret」)

  • 環境変数を置換するためのコマンドラインアプリケーションのラップ(「exec」)

ksm
Usage: ksm [OPTIONS] COMMAND [ARGS]...

  Keeper Secrets Manager CLI  Version:X.X.X

Options:
  --ini-file TEXT                INI config file.
  -p、--profile-name TEXT        Config profile
  -o、--output TEXT              Output [stdout|stderr|filename]
  -c、--color / -nc、--no-color  Use color in table views, where applicable.
  --cache / --no-cache           Enable/disable record caching.
  --help                         Show this message and exit.

Commands:
  config   Configure the command line tool
  exec     Wrap an application and replace env variables
  init     Initialize a configuration file for integrations
  profile  Manage local client device profiles
  quit     Quit shell mode
  secret   Query the Keeper vault and retrieve secrets
  shell    Run KSM in a shell
  version  Get module versions and information.

ローカルクライアントデバイスの作成

CLIは、ksm profile initコマンドでワンタイムアクセストークンを渡すことによって、クライアントデバイスとして初期化されます。初期化後、CLIを使用してシークレットを取得できます。 以下の例では、「XX:XXXX」をクライアントデバイスのワンタイムアクセストークンに置き換えます。

ksm profile init XX:XXXX
ksm secret list

自動起動を使用してコンテナ内でCLIを利用できるようにしている場合、または「profile init」を実行したくない場合は、KSM_TOKENを設定すれば、プロファイルを自動作成できます。

例:

KSM_TOKEN="XX:XXXX" ksm secret list

環境変数を設定して、コマンドラインのフラグを減らすことができます。

環境変数名説明

KSM_TOKEN

クライアントデバイスの初期化に使用されるワンタイムアクセストークン

KSM_HOSTNAME

Keeper環境のホスト。US、EU、AU、JP、CA、US_GOV、または完全なURLのいずれか。トークンにはホスト名が含まれるため、この変数はほとんどの場合使用されません。

KSM_INI_DIR

CLIのINI設定ファイルが格納されているディレクトリ。

KSM_INI_FILE

CLIのINI設定ファイルの名前。

KSM_CLI_PROFILE

CLIの有効なプロファイル。

KSM_CONFIG

Base64設定文字列。CLIはこれをデフォルトプロファイルに使用します。

コマンドの実行

Keeper Secrets Managerのコマンドは、コマンドラインからksmプログラムを使用して実行されます。

ksm <command> <sub-command> <options>

特定のコマンドのヘルプを表示するには、次のコマンドを実行します。

ksm <command> --help

サブコマンドのヘルプを表示するには、次のコマンドを実行します。

ksm <command> <sub-command> --help

コマンド説明

secret

ボルトからシークレットを取得します

profile

ローカル設定プロファイルを管理します

init

ワンタイムアクセストークンを初期化します

exec

環境変数を置換してスクリプトを実行します

config

CLI設定を管理します

version

CLIのバージョン情報を表示します

shell

CLIを対話型シェルモードで起動します

quit

シェルモードを終了します

オプション

--ini-file </path/to/keeper.ini>

keeper.ini設定ファイルを設定します。設定されていない場合、CLIは_keeper.ini_ファイルがないか以下のディレクトリを調べます。

  • 環境変数KSM_INI_DIRで定義されたパス

  • カレントディレクトリ

  • ユーザーのホームディレクトリ

    • ${HOME}

    • ${HOME}/.config/ksm

    • $env:USERPROFILE

  • 様々なシステムディレクトリ

    • /etc

    • /etc/ksm

    • /etc/keeper

    • $env:APPDATA/Keeper

    • $env:ProgamData/Keeper

    • $env:ProgramFiles/Keeper

-p、--profile-name <name> 指定した設定プロファイルを使用します

-o、--output <{stdout, stderr, filename}> 出力先を設定します

  • stdout - 標準出力に出力します(デフォルト)

  • stderr - 標準エラーに出力します

  • <filename> - 指定したテキストファイルに出力を送信します

--color/--no-color、-c/-nc 出力インスタンスの色を有効化または無効化します

--cache/--no-cache このコマンドインスタンスの記録のキャッシュの使用を有効化または無効化します。

最終更新