HashiCorp Vault のセットアップ - 共通環境
DigiCert® HashiCorp Vault 統合により、DigiCert® Trust Lifecycle Manager を通じて発行された SSL/TLS 証明書の登録、収集、および失効に対して、シームレスなソリューションが提供されます。この統合はカスタム HashiCorp Vault PKI プラグインとして配布されます。プラグインは次を提供します。
証明書署名要求(CSR)の生成と署名。
Vault の DigiCert® Trust Lifecycle Manager を通じて発行された証明書の保管および状態の追跡
DigiCert® Vault 統合では、Vaultにおける新規の TLS/SSL 証明書の生成および保管をサポートしています。適切な設定オプションを提供することで、さまざまなタイプの TLS/SSL を要求することができます。
開始する前に
前提条件
アクティブで、自己ホスト型の Vault インスタンス。DigiCert® Trust Lifecycle Manager はクラウドホスト型の Vault のインスタンスをサポートしていません。
必要とする OS およびチップセットの DigiCert® Vault PKI プラグインバイナリ。
Vault がプラグインを探すディレクトリ。
DigiCert ONE プラットフォームを示す URL。
次にアクセスできる、少なくとも 1 人のサービスユーザーおよび API トークン。
Trust Lifecycle Manager。
アカウントレベルの権限。
証明書要求およびプロビジョニングに必要なアカウント。
設定に割り当てようとするデフォルトの証明書プロファイルの証明書プロファイル ID(GUID)。
Trust Lifecycle Manager で、[ポリシー]>[証明書プロファイル]を選択します。
使用しようとする証明書プロファイルを検出して選択します。
プロファイル説明の一番上にある [GUID] の値をコピーします。
ここでの説明よりさらに詳しい HashiCorp Vault を設定する手順については、『HashiCorp の文書』を参照してください。
統合ワークフロー
DigiCert® Trust Lifecycle Manager からプラグインを取得します。
DigiCert® Trust Lifecycle Manager にサインインします。
[統合]>[コネクタ]に移動します。
[Vault]セクションで、[HashiCorp]を選択します。
ステップに従ってプラグインバイナリ
digicert-pki-engineをダウンロードします。次の手順で定義した
plugin_directoryにプラグインを移動します。
Vault サーバーは .HCL または .JSON 形式のファイルで設定されます。DigiCert のプラグインは外部プラグインなので、Vault 構成ファイルには、
plugin_directoryの詳細が含まれなくてはいけません。例:storage "raft" { path = "/Users/user.name/Downloads/hashicorp/vault/data" node_id = "node1" } listener "tcp" { address = "127.0.0.1:8200" tls_disable = "true" } plugin_directory="/Users/user.name/Downloads/hashicorp" api_addr = "http://127.0.0.1:8200" cluster_addr = "https://127.0.0.1:8201" ui = trueVault を初期化および開封します。『HashiCorp の文書』を参照してください。
初回ルートトークンとして認証します。
プラグインの SHA-256 チェックサムを取得し、それを Vault システムカタログに登録します。
export SHA256=$(shasum -a 256 digicert-pki-engine| cut -d' ' -f1) vault plugin register -sha256=$SHA256 secret digicert-pki-engine
応答:
Success! Registered plugin: digicert-pki-engine
DigiCert PKI シークレットエンジンを有効化します。
vault secrets enable -path=digicert-pki digicert-pki-engine
応答:
Success! Enabled the digicert-pki-engine secrets engine at: digicert-pki/
設定を作成します。
vault write digicert-pki/configs/[config name] url="https://one.digicert.com/" api_key="01aad362f1610f7d9e171f0fa2_80995e78c63a8e7d474c41dbecb2a165f049aa47799ad42f90fc386b1edb680c"
応答:
Success! Data written to: digicert-pki/configs/[config name]
デフォルトの
profile_idを定義するロールを作成します。注記
ロールに定義された
profile_idはデフォルトで、証明書要求で別の ID を渡すことによって上書きできます。vault write digicert-pki/roles/[role name] config_name="[config name]" profile_id="017e05b0-fedc-4a9a-88f7-1fd759f20f37"
応答:
Success! Data written to: digicert-pki/roles/[role name]
設定が完了しました。これで Vault を通じて証明書を要求することができます。
要求
vault write digicert-pki/issue/[role name] common_name="name.winthecustomer.com"
応答
Key Value --- ----- certificate -----BEGIN CERTIFICATE-----\n•••\n•••\n•••\n-----END CERTIFICATE----- common_name name.winthecustomer.com private_key -----BEGIN RSA PRIVATE KEY-----\n•••\n•••\n•••\n-----END RSA PRIVATE KEY----- serial_number 748B6C3B014C48A1F3FF0C17C4764428360F68F5
次の手順
Vault を正常に設定したら、その他すべてのアクティビティについて設定および証明書の操作を参照してください。