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