HTTP 400 Bad Request (SSL 証明書エラー) mTLS (HTTPS 相互認証) 使用時のインスタンスへの受信 API 呼び出しに対する応答Issue インスタンスへの接続を開始するときに mTLS (HTTPS 相互認証) を使用しようとする API クライアントプログラムまたはスクリプトを使用しているお客様は、接続が拒否され、HTTP 400 レスポンスと次のエラーが表示される場合があります。 400 Bad Request The SSL certificate errorsnow_adcRelease新しい ADCv2 ロードバランサー上にあるすべての ServiceNow インスタンス (リリースを問わない) ただし、受信 mTLS (HTTPS 相互認証) は、Quebec 以降のインスタンスでのみサポートされています。CauseQuebec リリースでは、ServiceNow インスタンスとの受信接続に mTLS (HTTPS 相互認証) を使用できるようにする新機能を導入しました。 https://docs.servicenow.com/bundle/quebec-platform-administration/page/integrate/authentication/concept/certificate-based-authentication.html https://docs.servicenow.com/bundle/quebec-servicenow-platform/page/product/mid-server/task/install-mid-mutual-auth.html この新機能を動作させるには、ServiceNow ADCv2 ロードバランサーデバイスに変更を加える必要がありました。この変更により、あらゆる mTLS 接続試行の一部として使用される受信証明書の有効性をチェックする機能が ADCv2 で有効になりました。この変更は、2021 年 4 月にロールアウトされました。ServiceNow は Quebec より前のバージョンで受信 mTLS を一切サポートしていなかったため、ADCv2 (または以前の F5 デバイス) がこれらの証明書チェックを実行する理由はありませんでした。これが、2021 年 4 月以前に mTLS を試みるクライアントプログラムまたはスクリプトが動作した理由である可能性があります。 新しい MID サーバー機能を有効にするには、受信 mTLS 接続試行の証明書チェックが必要になりました。しかし、ServiceNow は自己署名/内部 CA を使用したインスタンスへの受信 mTLS を依然としてサポートしていません。これが HTTP 400 拒否の原因となっている可能性があります。mTLS の場合、クライアントアプリケーションは検証できない内部 CA の証明書を使用しているため、ADCv2 が接続試行を拒否しています。 Resolution最善のソリューションは、ServiceNow インスタンスのバージョンによって異なります。 - Paris 以前:mTLS (HTTPS 相互認証) はサポートされていないため、ServiceNow インスタンスへの接続時に mTLS を試行しないようクライアントアプリケーション/スクリプトを構成する必要があります。 - Quebec 以降:mTLS が必要な場合は、次のドキュメントに従って構成してください。https://docs.servicenow.com/bundle/quebec-platform-administration/page/integrate/authentication/concept/certificate-based-authentication.html 現在 (2021 年 4 月)、受信 mTLS が機能するには、クライアント証明書が既知の CA (ほとんどのブラウザと OS が信頼する CA の 1 つ) によって署名されている必要がありますが、現在のところ、自己署名/社内 CA は ADCv2 で機能しません。Related Linksこのために内部の問題 PRB1491771 がオープンされました。