GitLab
Keeper Secrets ManagerのGitLabへの統合によるシークレットの動的な取得
最終更新
Keeper Secrets ManagerのGitLabへの統合によるシークレットの動的な取得
最終更新
GitLabパイプライン内にKeeperボルトからシークレットを取り込みます
ビルドの引数または環境変数としてシークレットのクレデンシャルを設定します
Keeperボルトからセキュリティで保護されたファイルをコピーします
Keeper Secrets Manager機能の完全なリストについては、概要をご参照ください。
このページでは、Secrets ManagerとGitLabとの連携について説明します。 この連携を利用するための必要条件は以下のとおりです。
Keeper Secrets Managerへのアクセス (詳細については、クイックスタートガイドをご参照ください)
KeeperアカウントのSecrets Managerアドオンの有効化
Secrets Manager強制ポリシーが有効化されたロールを割り当てられたメンバーシップ
シークレットを共有するKeeper Secrets Managerアプリケーション
アプリケーションの作成手順については、クイックスタートガイドをご参照ください
Keeper Secrets Manager設定の初期化
GitLab連携では、JSON形式とBase64形式の設定を使用できます
パイプラインの作成権限を持つGitLabアカウント
GitLabパイプラインジョブにインストールされたPython3
このアクションによって、Keeperからシークレットを安全に取得し、環境変数やファイルなど、GitLabパイプラインの適切な場所に格納します。
GitLab連携を利用するには、Keeper Secrets Managerの設定が必要です。
1) Keeper Secrets Managerの設定を作成します。 詳細は、ドキュメントをご参照ください。GitLab連携はBase64とJSON形式の設定をサポートしています。
2) GitLabに設定を保存するには、GitLab設定 (GitLab Settings) -> CI/CD -> 変数 (Variables) に移動します。
3) 新しい変数を作成します。キーには、変数の任意の名前を設定できます (KSM_CONFIGを使用して、SDKに設定を自動的に認識させます)。Base64またはJSON形式のSecrets Managerの設定として値を指定します。
KSM_CONFIG
を変数名として使用して、Secrets Manager SDKが設定の変数を自動的に認識するようにします
変数を作成すると、以下に示すようにGitLab変数に表示されるはずです。
Keeper Secrets ManagerとGitLabの連携設定が完了しました
GitLabでKeeper Secrets Managerを使用するには、まずPyPiレジストリからインストールする必要があります。これは、before_script
欄に以下の行を追加することで実現できます。
Secrets Managerの設定で変数名をKSM_CONFIG
に設定していない場合は、before_script
欄で設定する必要があります
GitLabジョブ内で、以下の形式を使用してKeeperボルトからシークレットを取得します。
これはKSM CLIツールを利用し、Keeper表記法を使用してシークレットを取得します。
シークレットを取得したら、それを環境変数またはファイルとして設定できます。
- export <VARIABLE NAME>=$(ksm secret notation <KEEPER NOTATION>)
を使用して、シークレットを環境変数に設定します。
例:
以下のジョブは、パスワードシークレットをMY_PWD
という名前の環境変数として設定し、カスタム「isbncode」記録フィールドをMY _ISBNCODE
という名前の環境変数に設定します。
上記の例のXXX
はUID記録に置き換えます。
Keeper Secrets Managerは、すべてのジョブステージで使用できます。この例では、build
ステージを使用します。
- ksm secret download -u <UID> --name <SECRET FILENAME> --file-output "<OUTPUT FILENAME>"
を使用して、Keeperボルトからファイルを取得し、GitLabパイプラインジョブにファイルとして保存します。
例:
以下のジョブは、Keeperの記録に添付された「mykey.pub」という名前のファイルを取得し、その内容をローカルの「tmp」フォルダにある「mykey.pub」という名前のファイルに保存します
上記の例のXXX
はUID記録に置き換えます。
Keeper Secrets Managerは、すべてのジョブステージで使用できます。この例では、build
ステージを使用します。
以下の例は、この連携で利用可能なすべての機能を示しています
上記の例のXXX
は、UID記録に置き換えます。