IBM Cloud Docs
HashiCorp Vault の構成

HashiCorp Vault の構成

HashiCorp Vault をツールチェーン内の 1 つのツール統合として構成して、HashiCorp Vault サーバー内に安全に保管されたシークレットにアクセスしたり参照したりできるようにすることができます。

ツールチェーンに HashiCorp Vault ツール統合を構成する前に、接続先の HashiCorp Vault サーバーへのアクセス権を持つ認証方式と、関連する資格情報が必要です。 例えば、authentication_methodgithub である場合、token 資格情報が必要です。 また、server urlintegration url、および secrets path の値が必要です。 HashiCorp Vault サーバーが特定のポートにバインドされている場合、サーバー URL にポート番号を含めてください。 例えば、https://192.168.0.100:8200 です。

HashiCorp Vault ツール統合では、名前による秘密参照のみがサポートされます。 CRN による秘密参照を使用する場合は、 Secrets Manager ツール統合 を使用する必要があります。

API キーなどのシークレットおよびツールチェーンやデリバリー・パイプラインの一部であるシークレットをセキュアに管理するように、HashiCorp Vault を構成します。

  1. ツールチェーン作成時にこのツール統合を構成する場合は、HashiCorp Vault ツール統合が構成中のテンプレート内に存在すれば、**「HashiCorp Vault」タブをクリックします。 あるいは、「その他のツール (More tools)」セクションで「HashiCorp Vault」**をクリックします。

  2. ツールチェーンがあり、そこにこのツール統合を追加する場合、IBM Cloudコンソールから、メニューアイコンハンバーガーアイコン>Platform Automation>Toolchains をクリックします。 「ツールチェーン」ページで、ツールチェーンをクリックしてその「概要」ページを開きます。 あるいは、アプリの「概要」ページの「継続的デリバリー」カードで、**「ツールチェーンの表示」をクリックします。 次に、「概要」**をクリックします。

    a. **「ツールの追加」**をクリックします。

    b. 「ツール統合」セクションで**「HashiCorp Vault」**をクリックします。

  3. ツールチェーン内の HashiCorp Vault カードでこのツール統合に対して表示する名前を入力します。 シークレット名は、a-zA-Z、および 0-9 までの範囲内の文字、およびスペース文字をサポートします。 これらの範囲外の文字は許可されておらず、シークレットを解決することはできません。 例えば、my.secret は無効なシークレット名ですが、my-secret は有効です。

  4. ツールチェーンから HashiCorp Vault カードをクリックしたときに開く HashiCorp Vault サーバーの URL を入力します。 この URL の前に http または https プロトコルという接頭部があり、https://www.acme.com:8200 などの HashiCorpVault ポート番号で終わっていることを確認してください。

  5. HashiCorp Vault ツール統合の URL を入力します。 この値は、組織の HashiCorp Vault サーバーの Web UI コンソールまたはドキュメントに関連する組織固有の URL などの任意の有効な URL にすることができます。

  6. 構成済みの認証方式および関連した認証資格情報を使用する際にアクセス可能な HashiCorp Vault サーバー上のシークレットへのパスを入力します。 この値には、シークレット・パスのみを含める必要があり、シークレット・パスの最後にシークレット名を含めることはできません。 認証資格情報に、指定されたシークレット・パス内の関連する LIST 権限が含まれている場合、そのパス内のシークレットのリストを表示できます。

  7. 「統合の作成」 をクリックします。

  8. ツールチェーンの「概要」ページの**「サード・パーティー・ツール」カードで、「HashiCorp Vault」**をクリックして、ツールチェーンまたはデリバリー・パイプライン内で使用するシークレットを HashiCorp Vault シークレット・ピッカー・コンポーネントおよび Pusher コンポーネントで選択します。

API を使用した HashiCorp Vault の構成

HashiCorp Vault ツール統合では、 read、および update ツール統合を作成するときに Toolchain HTTP API および SDK で使用できる以下の構成パラメーターがサポートされます。

hashicorpvault 値を使用して、要求本体に tool_type_id プロパティーを指定する必要があります。

HashiCorpVaultツール統合パラメータ
パラメーター 使用法 タイプ Terraform 引数 説明
認証方式 必須、更新可能 ストリング 認証方式 HashiCorpVaultインスタンスの認証方法。
dashboard_url 必須、更新可能 ストリング dashboard_url このツール統合の HashiCorp Vault サーバー・ダッシュボードの URL。 グラフィカル UI では、 HashiCorp Vault ツール統合カードをクリックすると、ブラウザーがこのダッシュボードに移動します。
デフォルトの秘密 オプション、更新可能 ストリング デフォルトの秘密 HashiCorp Vault インスタンスでシークレット名のリストが返されない場合に使用されるデフォルトのシークレット名。
名前 必須、更新可能 ストリング 名前 このツール統合の名前。 シークレット参照には、シークレットが存在するシークレット・ストアを識別するためのこの名前が含まれます。 ツールチェーンに統合されたすべてのシークレット・ストア・ツールには、シークレットの解決が適切に機能するように固有の名前を付ける必要があります。
パスワード オプション、更新可能 パスワード パスワード userpass 認証方式を使用する場合の HashiCorp Vault インスタンスの認証パスワード。 その他の認証方式では、このパラメーターは無視されます。 このパラメーターには、ツールチェーン秘密参照を使用できます。 秘密参照の使用について詳しくは、 Continuous Deliveryでの機密データの保護 を参照してください。
パス 必須、更新可能 ストリング パス HashiCorpVaultインスタンスに秘密が保存されているマウントパス。
role_id オプション、更新可能 パスワード role_id approle 認証方式を使用する場合の HashiCorp Vault インスタンスの認証役割 ID。 その他の認証方式では、このパラメーターは無視されます。 role_id をシークレットとして管理し、このパラメーターをプレーン・テキストで共有しないでください。 このパラメーターには、ツールチェーン秘密参照を使用できます。 秘密参照について詳しくは、 Continuous Delivery を参照してください。
秘密フィルター オプション、更新可能 ストリング 秘密フィルター HashiCorp Vault インスタンスから返される秘密の名前のリストをフィルタリングするための正規表現。
秘密 ID オプション、更新可能 パスワード 秘密 ID approle 認証方式を使用する場合の HashiCorp Vault インスタンスの認証秘密 ID。 その他の認証方式では、このパラメーターは無視されます。 このパラメーターには、ツールチェーン秘密参照を使用できます。 秘密参照について詳しくは、 Continuous Deliveryでの機密データの保護 を参照してください。
サーバー URL 必須、更新可能 ストリング サーバー URL HashiCorpVaultインスタンスのサーバーURL。
token オプション、更新可能 パスワード token github 認証方式および token 認証方式を使用する場合の HashiCorp Vault インスタンスの認証トークン。 その他の認証方式では、このパラメーターは無視されます。 このパラメーターには、ツールチェーン秘密参照を使用できます。 秘密参照について詳しくは、 Continuous Deliveryでの機密データの保護 を参照してください。
ユーザー名 オプション、更新可能 ストリング ユーザー名 userpass 認証方式を使用する場合の HashiCorp Vault インスタンスの認証ユーザー名。 その他の認証方式では、このパラメーターは無視されます。

HashiCorp Vault に関する詳細

HashiCorpVaultの詳細については、HashiCorpVaultをご覧ください。