現象
Microsoft SQL Server でトランスポート層セキュリティ (TLS) プロトコルバージョン1.2 を使用していることを前提としています。 データベースミラーリング、可用性グループ、service broker のエンドポイントの通信を暗号化するために使用された証明書では、通信が失敗します。 さらに、SQL Server エラーログに次のエラーメッセージが表示されます。
接続ハンドシェイクに失敗しました。 OS への通話に失敗しました: (80090331) 0x80090331 (クライアントとサーバーは、共通のアルゴリズムを持っていないため、通信できません)。 状態 58. '。
さらに、Windows ログによって次の Schannel エラーが報告されます。
致命的なアラートが生成され、リモートエンドポイントに送信されました。 これにより、接続が終了する可能性があります。 TLS プロトコルで定義された致命的なエラーコードは40です。 Windows SChannel エラー状態は1205です。
原因
この問題は、TLS 1.2 では署名ハッシュアルゴリズムとして MD5 がサポートされていないために発生します。
解決方法
現在のセキュリティのベストプラクティスと標準に基づいて、SQL Server エンドポイントの暗号化に使用される証明書の非 MD5 署名ハッシュに切り替えることをお勧めします。TLS 1.2 をサポートする修正済みバージョンの一覧は、次の Microsoft サポート技術情報の記事で参照できます。
3135244 Microsoft SQL Server 向けの TLS 1.2 サポート
状態
マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。
関連情報
ソフトウェアの更新を説明するために Microsoft が使用する 用語 について説明します。