Skip to main content

API ベースの登録

Trust Lifecycle Manager REST API を使用して DigiCert​​®​​ Trust Lifecycle Manager から Salt ノードに証明書を取得するには、以下の手順を実行します。発行された証明書は、PEM エンコードされた X.509 形式で API レスポンスに返されます。

開始する前に

Trust Lifecycle Manager へのアクセス権と、Manager または User and certificate managerユーザーロールを持つ、アクティブな DigiCert ONE ユーザーまたはサービスユーザーの API トークンが必要です。詳細は「API アクセス」を参照してください。

Trust Lifecycle Manager では、登録方法として REST API、認証方法として 3rd Party app を指定された証明書プロファイルが必要です。プロファイル詳細ページから、統合を設定する際に使用する以下のパラメータを収集します。

  • プロファイル ID: プロファイル詳細ページの GUID フィールド、または DigiCert ONE URL から取得します。

  • REST API エンドポイント(API KEY 認証): プロファイル詳細ページの上部にある REST URL ドロップダウンからコピーします。

統合ワークフロー

SaltStack 統合パッケージをダウンロードし、以下のサンプルファイルを取得します。

  • certificate_params.sls: 証明書要求と API アクセス詳細を設定するサンプルの Salt ピラーデータファイル。

  • copy_certificate_minion.sls: Salt マスターからミニオンへ証明書をコピーするサンプルのスクリプト。

  • request_certificate.sls: CSR を生成し、Trust Lifecycle Manager からその REST API 経由で証明書を要求するサンプルのスクリプト。

  • top.sls: DigiCert 証明書要求パラメータを含むデータファイルの場所を指定する Salt ピラーの「トップ」ファイルのサンプル。

注記

ダウンロード可能なサンプルファイルは、[コネクタの追加]>[インフラの自動化]>[SaltStack]を選択して、Trust Lifecycle Manager の[Integrations > Connectors]ページから入手することもできます。

サンプルファイルを使用して、証明書要求と API アクセス詳細で Salt ピラーを設定します。

  1. certificate_params.sls および top.sls ファイルを Salt ノード上の /srv/pillar ディレクトリにコピーします。

  2. certificate_params.sls ファイルを更新し、以下のパラメータに値を指定します。

    • private-key-path: Salt ノード上で秘密鍵を保存する必要があるディレクトリパス。

    • csr-path: Salt ノード上で CSR を保存する必要があるディレクトリパス。

    • rest-api-url: Trust Lifecycle Manager で証明書プロファイルの詳細ページからコピーされた REST API エンドポイント(API KEY 認証)

    • x-api-key: Trust Lifecycle Manager へのアクセス権と、Manager または User and certificate manager のユーザーロールを持つ、アクティブな DigiCert ONE ユーザーまたはサービスユーザーの API トークン。

    • profile-id: Trust Lifecycle Manager で証明書の発行元となる API 対応証明書プロファイルの GUID。

    • common-name: 発行する証明書のコモンネーム。

  3. (オプション)識別しやすいように、certificate_params.sls ファイルの名前を変更します。このファイルの名前を変更する場合は、新しいファイル名を含めるように top.sls ファイルも必ず編集します。ファイル拡張子は変更しないでください。

Salt マスターまたはミニオンで Trust Lifecycle Manager から証明書を要求するには:

  1. request_certificate.sls スクリプトを Salt ノード上の /srv/salt ディレクトリにコピーします。

  2. (オプション)識別しやすいように、スクリプトの名前を変更します。ファイル拡張子は変更しないでください。

  3. 以下のようにスクリプトを実行します。2 つ目の引数としてローカル Salt ノード(マスターまたはミニオン)の ID を指定します。スクリプトの名前を変更した場合は、最後の引数としてその新しいスクリプト名を指定します。

    • Salt マスターから: salt <salt-master-id> state.apply request_certificate

    • Salt ミニオンから: salt <salt-minion-id> state.apply request_certificate

Salt マスターで証明書を要求した場合は、次のように Salt ミニオンへコピーできます。

  1. copy_certificate_minion.sls スクリプトを Salt マスターの /srv/salt ディレクトリにコピーします。

  2. スクリプトを編集し、以下のように値を指定します。

    • name: 証明書をコピーするミニオン上のパス。

    • source: マスター上の証明書の salt:// パス。

  3. Salt マスターで、次のようにスクリプトを実行します。2 つ目の引数として、証明書のコピー先となる Salt ミニオンの ID を指定します。

    • salt <salt-minion-id> state.apply copy_certificate_minion

次の手順

要求された証明書が、PEM エンコードされた X.509 形式で salt コマンドへの応答として返されます。これを Salt ノード上の .crt ファイルにコピーします。

証明書は Trust Lifecycle Manager[インベントリ]ビューにも表示されるので、それを監視して通知を設定することができます。