Splunk AppDynamics コントローラに署名付き TLS 証明書をアップロードすると、コントローラは証明書を検証します。証明書がアップロード要件を満たしていない場合、エラーが表示され、アップロードは失敗します。このドキュメントでは、発生する可能性のあるエラーとその解決方法について説明します。
証明書署名要求(CSR)を生成すると、Splunk AppDynamics では公開キーと秘密キーのペアが作成されます。秘密キーは Splunk AppDynamics の安全なキーストアにあります。公開キーは CSR で使用できます。署名付き TLS 証明書を取得するには、同じ CSR を選択した認証局(CA)で署名する必要があります。相互 TLS が機能するには、署名付き TLS 証明書を Splunk AppDynamics コントローラにアップロードする必要があります。別の CSR を使用して署名された TLS 証明書をアップロードすると、公開キーと秘密キーのペアが一致せず、コントローラにエラーが表示されます。
Resolution:
公開キーと秘密キーのペアが一致するように、同じ CSR で署名された署名付き TLS 証明書をアップロードする必要があります。
Error: Only client certificates are supported
相互 TLS 認証では、Splunk AppDynamics コントローラはクライアントとして機能し、アラートを送信するエンドポイントはサーバーとして機能します。そのため、署名付き TLS 証明書をアップロードすると、コントローラは証明書がクライアント証明書であるかどうかを確認します。サーバー証明書をアップロードすると、このエラーが発生します。
Resolution:
[Alert & Respond] > [Mutual TLS Configuration, ] から、使用済みの CSR をダウンロードするか、CSR を生成して CA の署名を付けます。次に、署名付き TLS 証明書をアップロードします。
Error: Only Base 64-encoded certificates are supported
Splunk AppDynamics コントローラは、相互 TLS 認証用に Base64 でエンコードされた証明書のみをサポートします。Base64 は、SSL 証明書の内容をエンコードするための業界標準形式です。次に、Base64 でエンコードされた証明書の例を示します。その内容が BEGIN CERTIFICATE
句と END CERTIFICATE
句で囲まれています。
-----BEGIN CERTIFICATE-----
MIIB0TCCATqgAwIBAgIQUq+2SdEkLr5K6xqjSEvRsDANBgkqhkiG9w0BAQUFADAU
MRIwEAYDVQQDEwlsb2NhbGhvc3QwHhcNMTIwODA0MDA0OTEyWhcNMTcwODA0MDAw
MDAwWjAUMRIwEAYDVQQDEwlsb2NhbGhvc3QwgZ8wDQYJKoZIhvcNAQEBBQADgY0A
...
Y2nd44bYEpmaBy7XJ5UIGEkuD3VIxT2S+2bCwkRR+9/+7vggR2q7l7YEktM2mFBI
yqOMOroAw+5cdc06c/B7UimwKFczsyhi9LUIr3rXI42FdXBHWw==
-----END CERTIFICATE-----
CODE
Base64 でエンコードされていない署名付き TLS 証明書をアップロードすると、このエラーが発生します。
Resolution:
TLS 証明書から Base64 でエンコードされたテキストを BEGIN CERTIFICATE
句および END CERTIFICATE
句とともにコピーしてアップロードします。
Error: The certificate has expired
署名付き TLS 証明書には、申請者または CA が指定した有効期限があります。すでに期限が切れている TLS 証明書をアップロードすると、このエラーが発生します。
解決
[Alert & Respond] > [Mutual TLS Configuration, ] から、CSR を生成して CA の署名を付けます。次に、署名付き TLS 証明書をアップロードします。
Error: Certificate chain is not valid.
証明書チェーンには、リーフ証明書と中間証明書が必要です。最初の証明書はリーフ証明書であり、その次が中間証明書である必要があります。各証明書は、後続の証明書によって署名される必要があります。この順序になっていない証明書チェーンをアップロードすると、このエラーが発生します。
解決
正しい順序で証明書が格納された有効な証明書チェーンをアップロードします。
Error: Certificate chain depth cannot be more than the limit.
使用できる証明書チェーンの最大長は、appdynamics.controller.alerting.mtls.max.certificate.chain.length
フラグの値によって異なります。このフラグは、[Controller Settings] ページにあります。デフォルトでは、フラグ値は 2 です。アップロードした証明書チェーンの長さが指定値を超えると、このエラーが発生します。
解決
appdynamics.controller.alerting.mtls.max.certificate.chain.length
フラグで指定された値内の長さの証明書チェーンをアップロードします。ただし、フラグの値は更新できます。「証明書チェーン長のコントローラ設定」を参照してください。