3.6.1 シークレットの登録

ワークフロー実行の前提設定として、Vaultと連携する環境のシークレットを登録する必要があります。PlaybookがGitに登録されているため、Gitとの連携は必須です。以下にGitとの連携を例に操作方法を記載します。他に連携が必要な環境についても同様に設定してください。

(1)Secrets Engines作成

1. SecretsタブのSecrets Engines画面で「Enable new engines」をクリックすると、Secret Engines選択画面に遷移します。
2.「KV」を選択し、「Next」をクリックすると、Secrets Engines設定画面に遷移します。
3.「Path」に「secrets/(任意のSecrets Engine名)」を入力し「Enable Engine」をクリックすると、Secrets Engineが作成され、Secret作成画面に遷移します。

このとき作成したSecrets Engine名は自動化の認証情報登録時に使用します。自動化については「認証情報の登録」を参照してください。

(2)Secretの作成

1. Secret作成画面の「Create secret」をクリックすると、Secret情報登録画面に遷移します。
2. 「Path for this secret」に任意のパス(gitなど)を入力し、「Secret data」に任意のkey(git_access_tokenなど)、「value」にGitLabアクセストークンの値を入力後、「Add」ボタン、「Save」ボタンをクリックします。
GitLabアクセストークン取得方法は「GitLabアクセストークン取得方法」を参照してください。

このとき設定したパスおよびkey名称は自動化の認証情報の登録時に使用します。自動化については「認証情報の登録」を参照してください。

(図)シークレット情報登録画面

(図)シークレット情報登録画面 (図)シークレット情報登録画面

(3)自動化からシークレットにアクセスするための認証情報の取得

下図のコマンド入力画面から下記のコマンドを実行し、AppRoleのロールIDとシークレットIDを取得してください。「自動化」の設定時に使用するためメモなどで記録してください。このとき取得したIDは自動化の認証情報の登録時に使用します。自動化については「認証情報の登録」を参照してください。

AppRoleのロールID

vault read -field=role_id auth/approle/role/automation/role-id

AppRoleのシークレットID

vault write -force -field=secret_id auth/approle/role/automation/secret-id

(図)コマンド入力画面

(図)コマンド入力画面 (図)コマンド入力画面