HashiCorp Vault

HashiCorp Vault は、機密データへのアクセスを管理および保護するために使用される ID ベースの秘密および暗号化管理システムです。 ボールトのキー/値シークレット・エンジンに保管されている資格情報を参照するように IBM® Security QRadar SOAR アプリケーションを構成できます。
重要: IBM Security QRadar SOAR は、キー/値シークレット・エンジンのみをサポートします。

ボールトのセットアップ

SOAR アプリケーション・クライアントが Vault に対して認証し、 SOARと対話できるようにするには、Vault インスタンスに AppRole を作成する必要があります。 AppRoles,の作成の詳細については、HashiCorpVaultウェブサイトのAppRolePull Authenticationを参照してください。

アプリには、シークレット・エンジンへの読み取り権限と、アプリと共有する特定のシークレットへのパスへの読み取り権限が必要です。 アプリが必要としないシークレット・エンジンまたはパスへのアクセス権限を付与しないでください。 ボールト内の資格情報を使用するアプリケーションの制御と可視性を向上させるには、SOAR アプリケーションごとに異なるアプリケーション役割を作成します。

AppRole,を作成したら、ロールの「role_id」と「secret_id」をメモする。 この情報は、各アプリが Vault に接続できるように、保護されたシークレットとして SOAR アプリケーションに保管する必要があります。 secret_id が頻繁に期限切れになるように構成されている場合、管理者は手動で値を取得し、 SOAR アプリケーションでその値をリセットする必要があります。

SOAR アプリでの HashiCorp Vault 構成

CCP でアプリケーションが構成され、 role_idsecret_id の値が設定されたら、 IBM Security QRadar SOARに SOAR アプリケーションをインストールします。

アプリを構成するときは、以下の値を使用して Vault への接続を構成します。
表 1. HashiCorp Vault 接続設定
構成パラメーター

PAM タイプ

HashiCorpVault

PAM_ アドレス

HashiCorp サーバーに到達できるアドレスを指定します。 該当する場合は、ポートを含めます。

この値は通常、Vault コマンド・ライン・インターフェースを使用する場合に VAULT_ADDR に設定する値と同じです。 例えば、アドレスは https://my_vault.cloud.hashicorp.com:8200のようになります。

PAM_APP_ID

このパラメーターを AppRoleの role_id 値に設定します。

PAM_SECRET_ID

このパラメーターを AppRoleの secret_id 値に設定します。

PAM_VERIFY_SERVER_CERT

このパラメーターは、ボールト構成によってはオプションです。

ご使用の構成でこのパラメーターが必要な場合、受け入れられる値は TrueFalse、または自己ホスト型ボールト・サーバー上の自己署名証明書を認証する証明書チェーンへのパスです。 デフォルト値の Trueを受け入れることをお勧めします。

重要: このパラメーターは、実稼働環境では使用しないでください。

ボールト・シークレットの参照

参照するシークレットごとに従う必要がある app.config ファイル構造には制限があります。 適切な構造が使用されていない場合、アプリケーションは失敗します。

Vault からプルする各構成には、キャレット (^) 記号を接頭部として付ける必要があります。

Vault からプルする各シークレットには、それぞれピリオド (.) で区切られた以下の 3 つの値が必要です。
  • ボールト内のシークレット・エンジンの名前。
  • エンジン内のシークレットへのパス。
  • 値を取得する対象となる特定のキーの名前。
SOAR app.config 項目は、次の形式に従います。
[SOAR_app_name]
<configuration_name>=^<secret_name>.<path/to/the/secret>.<secret_password>
例えば、 secret1 という名前のシークレットがあり、キーと値のエンジンに保管されているとします。 シークレットのパスは test/soarappで、シークレット資格情報の名前は secret_passwordです。 fn_my_app アプリケーションをインストールすると、構成は my_secret_configという名前になります。 この例では、 app.config ファイルに以下のエントリーが含まれます。
[fn_my_app]
my_secret_config=^secret1.test/soarapp.secret_password
アプリケーションが SQL タイプ・ステートメントを使用してシークレットを呼び出す場合は、以下の構文を使用して、ボールトから取得した値を構成ストリング内に動的に挿入できます。
[fn_my_app]
sql_query=FROM table SELECT ^{secret1.test/soarapp.value_to_select}

構成のテスト

ボールトとアプリの両方を構成した後、構成をテストして、ボールト接続が機能すること、およびアプリが正しく構成されていることを確認できます。 構成をテストするには、アプリケーションの 「構成」 ページに移動し、 「構成のテスト」をクリックします。