次の方法で共有


SQL Server マシンに暗号スイート ポリシーを実装した後の "クライアントが接続を確立できません" エラー

この記事は、サーバーに暗号スイート ポリシーを実装した後に発生する問題を解決するのに役立ちます。 クライアントとサーバーでサポートされている暗号スイートが一致しない場合、接続が失敗する可能性があります。

現象

サーバーに暗号スイート ポリシーを実装すると、次のエラー メッセージが表示されます。

リモート ホストによって、既存の接続は強制的に切断されました。 [SQLSTATE 42000](エラー 10054)リンク サーバー "DB 名" の OLE DB プロバイダー "" から、"クライアントが接続を確立できません" というメッセージが返されました。

原因 1: Rivest Cipher 4 (RC4) が含まれていない

暗号スイートに Rivest Cipher 4 (RC4) が含まれていない場合、暗号化に RC4 を使用しようとすると失敗します。 同様に、暗号スイートに RC4 が含まれているが、関係する当事者の 1 人が含まれていない場合、ハンドシェイクは失敗し、接続は確立されません。

ソリューション

次のステップを実行します。

  1. msds-supportedEncryptionType プロパティが設定されているかどうかを確認します。 プロパティが設定されていない場合は、RC4 のみが有効になります。
  2. RC4、AES128、AES256 を有効にするには、このプロパティの値を 28 に設定します。

原因 2: トランスポート層セキュリティ (TLS) バージョンの不一致

トランスポート層セキュリティ (TLS) のバージョンが一致しません。 この問題は、クライアントが TLS 1.0 を使用して接続を開始した場合に発生する可能性があります。 最新の暗号スイートは TLS 1.0 をサポートしていないことがよくあります。TLS 1.2 などのより安全なバージョンが好まれるためです。

ソリューション

次のステップを実行します。

  1. クライアント ドライバーが TLS 1.2 をサポートしていることを確認します。 そうでない場合は、ドライバーを更新します。

  2. TLS 1.0 通信をサポートするために、次の暗号をローカル ポリシーに追加します。

    • TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
    • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
    • TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
    • TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA

関連項目

既存の接続がリモート ホストによって強制的に閉じられました (OS エラー 10054)