initコマンド
シークレットマネージャーAPIと連携するデバイスの初期化
説明: ワンタイムアクセストークンを初期化します。
パラメータ
実行するサブコマンド
形式: ksm init <サブコマンド>
サブコマンド
default
引き換えられたトークンをbase64エンコードJSONとして返す
k8s
引き換えられたトークンをKubernetesシークレットスクリプトとして返す
default と k8s では、ワンタイムアクセストークンをコマンドライン引数として渡します (ksm init default <TOKEN>、ksm init k8s <TOKEN>)。環境変数で渡す方法はありません。トークンはシェル履歴に残り、Linuxの ps aux などプロセス一覧からも短い間見えます。1回限りのトークンなので、生成したらすぐに引き換え、信頼できる非公開のシェルで実行してください。
default
ワンタイムアクセストークンを初期化し、Github ActionsやTerraformなどの外部統合で使用する設定プロファイルを作成します。設定の出力は、base64でエンコードされたJSON (デフォルト) またはk8s形式で生成できます。他のKSM開発者用SDKやアプリケーションは、この形式の設定を理解できます。
ksm init default <トークン>
オプションパラメータ
--plain設定をbase64でエンコードしません。プレーンなJSONを返します。-h,--hostnameホスト名を変更します。--skip-ssl-verifyリモートSSL証明書を検証しません。
$ ksm init default XX:XXXX
ewogICAgImNsaWVudElkIjogInd ...U1R4eUQrU3ZNbkhrMTVLUHRGS2MrZlZJOGtlOUtL==k8s
ワンタイムアクセストークンを初期化して、Kubernetesシークレットスクリプトに設定します。
ksm init k8s <トークン>
オプションパラメータ
--name, -nKubernetesシークレットの名前。デフォルトはksm-configです。使える文字は小文字、数字、-、.のみです。.で区切った各ラベルは、先頭と末尾を英字または数字にしてください。名前は253文字以内です (KubernetesがSecret名に適用するRFC 1123のサブドメイン規則)。無効な名前は、ワンタイムアクセストークンを引き換える前に拒否されます。--namespace,--nsKubernetes名前空間の名前。デフォルトはdefaultです。--apply自動的にkubectlを使用してシークレットを適用します。シークレットのスクリプトは表示されません。--immutable, -iシークレットを改ざんできないようにします。Kubernetes 1.21以降が必要となります。-h,--hostnameホスト名を変更します。--skip-ssl-verifyリモートSSL証明書を検証しません。
一部の名前はKubernetes Secretとして有効でも、YAML 1.1では曖昧です (例: y、n、1e5)。こうした名前も同様に引用符で囲まれるため、kubectl apply では真偽値や数値ではなく文字列として扱われます。
最終更新

