web-dev-qa-db-ja.com

SQL Serverと新しいTLS標準との互換性

  • 主要なブラウザはSSL3.0とTLS1.0を超えています。
  • PCI Security Councilは、これらのプロトコルが十分に強力な暗号化と見なされるためのサポート終了日を宣言しました。

新しい強力なプロトコルを使用するには、これらのプロトコルから離れる必要があります。 Windowsサーバーでは、これらの古いプロトコルを非常に簡単に無効にして、代わりにTLS1.1以上のみを提供できます。ただし、前述の elsewhere のように、Microsoft SQL Server 2008 R2とSQL Server 2012(少なくとも標準)は、これらの下位プロトコルが無効になっていると起動しません。ただし、MS SQL Serverのバージョンは増加しています。 SQL Server Standard、Business Intelligence、Enterprise、Express、Web、Compactの各エディションがあります。そしてもちろん、SQL Server 2008、2012、2014、および(プレリリース版)2016があります。

これらのエディションのうち、TLS1.1以上のプロトコルのみの使用をサポートする、またはサポートするエディションはどれですか?

30
Mark Goldfain

マイクロソフトは最近(多くのファンファーレなしで)TLS 1.2に投資し、SSLを段階的に廃止することを明らかにしました。 SQL Serverのすべてのエディションに関連する必要があります。

UPDATE 2016-01-29Microsoftは、2008年、2008年R2、2012年、および2014年にTLS 1.2の公式サポートを発表しました 。ダウンロードおよびその他の情報は KB#3135244 にあります。

言及されているいくつかの問題と、2014年に暗号化されたエンドポイントを使用している場合の警告についてブログに書きました:

また、@@ versionに応じて、ダウンロード(またはその他のアクション)するための正しいビルドを示します。

この動きが既存のすべてのバージョンに影響を与えるかどうかは、2014年以降、または2016年のみかどうかはまだ分からない。 以下の引用は、少なくとも2014年が作業の一部になることを示唆しているようです。投資の多くは、エンジンではなくクライアントライブラリにあると思われるため、次のリリースのすべてのバージョンで機能する可能性があります。 ODBC /ネイティブクライアントドライバーのサポートされます。

これはMicrosoftのKevin FarleeによるPowerPointデッキから入手したもので、情報の共有を許可されていますが、現時点ではどれだけ再配布されているのかわかりません。これがデッキからの正確な引用です:

暗号化処理中:スヌーピングや中間者攻撃からクライアントとサーバー間のデータを保護します。 CY 15でTLS 1.2にアップグレードすると、SSLは段階的に廃止されます。

また、 KB#3052404 を見ると、2012 SP +および2014で動作させるためのパッチがあるようです(2016年にはパッチは必要ありません)。 SQL Server 2005、2008、または2008 R2への移植(そして率直に言って、私はかなり驚きます)。

19
Aaron Bertrand

他の回答と同様に、TLS1.2の最新のCUが必要です。見る:

FIX:トランスポート層セキュリティプロトコルバージョン1.2を使用して、SQL Server 2014またはSQL Server 2012を実行しているサーバーに接続することはできません

  • SQL Server 2014 SP1用の累積的な更新1
  • SQL Server 2014の累積的な更新8
  • SQL Server 2012 SP3用の累積的な更新1
  • SQL Server 2012 SP2用の累積的な更新10

TLS 1.2のみを有効にすると、2つのエラーが発生する可能性があります。

  1. SQL Server 2014エージェントは起動しません。解決策: KB3135244 のダウンロードリンクからSQL Server 2012 SNACをインストールします。
  2. SQL Server Management Studioが接続できません。解決策: KB3135244 から適切な.NETフレームワークホットフィックスをインストールします

さらに、SQL Serverに接続するすべてのクライアントでSNAC/OBDCドライバーを更新する必要があります。

SQL Serverとクライアントドライバーのビルドの完全なリスト、ダウンロードリンク、および必要になる可能性のあるその他の構成変更は、次のマイクロソフトサポート技術情報の記事に含まれています。

Microsoft SQL ServerのTLS 1.2サポート

6
Jens W.

2016年1月29日の時点で、Microsoft SQL Serverは以下に対してTLS 1.2をサポートしています。

  • SQL Server 2008
  • SQL Server 2008 R2
  • SQL Server 2012;そして
  • SQL Server 2014

...そして次のような主要なクライアントドライバ:

  • サーバーネイティブクライアント
  • Microsoft ODBC SQL Server用ドライバー
  • SQL Server用Microsoft JDBCドライバー
  • ADO.NET(SqlClient)。

リリースに関するSQL Serverエンジニアリングチームのブログ投稿:

SQL Server 2008、2008 R2、2012、2014のTLS 1.2サポート

TLS 1.2をサポートするビルドと、クライアントおよびサーバーコンポーネントのダウンロード場所(KB3135244)のリスト:

Microsoft SQL ServerのTLS 1.2サポート (DBメールの.NET修正を含む)

注:上記は最初のリリース以降に更新され、SQL Server 2008またはSQL Server 2008 R2。これについては、KB 3146034で説明されています。

KB3135244からSQL Server 2008またはSQL Server 2008 R2バージョンをインストールすると、サービスが断続的に終了します

4
Amit Banerjee

SQL 2014 SP1 CU1でも、IISとSQLに別々のボックスを使用する必要がありました。途中でいくつかの明らかに関連する問題に遭遇し、手順を詳しく説明しました- この投稿

重要な点は次のとおりです。

  • IISとSQLを別々のボックスに置く
  • IISボックスで着信TLS1.0を無効にし、発信TLS1.0を有効にします
  • SQLボックスで双方向にTLS1.0を有効にします。
2
OutstandingBill

CU6からのSQL 2012のTLS 1.2サポートがあるSQL 2012 SP2 CU7として、サーバーレベルでTLS 1.0を無効化できないことを確認できます。クライアントの暗号化を強制しないインスタンスで、暗号化されていないManagement Studio接続を使用してSQLサーバーに接続できる。

これは、TDEまたはその他の証明書を使用しないインスタンス上にあります。

サーバーの信頼できる証明書を生成し、暗号化された接続を有効にした後、明日試しますが、現時点では、TLS 1.2はサポートされていますが、SQL 2012ではTLS 1.0を無効にすることはできません。

編集:

社内の認証局からデータベースサーバーの証明書を生成し、TLS 1.0プロトコルが無効になって接続できなくなるまで、SQLサーバーへの暗号化された管理スタジオ接続を確立できました。証明書と自己署名証明書がない場合と同じ動作が、ログインセッションの暗号化に使用されます。

これが私がフロントサーバーとバックサーバーの両方で行ったことです

  1. 開いた gpedit.msc。ローカルグループポリシーエディターで、[コンピューターの構成]ノードの下の[Windowsの設定]をダブルクリックし、[セキュリティの設定]をダブルクリックします。

  2. 「セキュリティ設定」ノードの下の「ローカルポリシー」をダブルクリックし、「セキュリティオプション」をクリックします。

  3. 詳細ウィンドウで、[システム暗号化:暗号化、ハッシュ、署名にFIPS準拠のアルゴリズムを使用する]をダブルクリックします。

  4. [システム暗号化:暗号化、ハッシュ、署名にFIPS準拠のアルゴリズムを使用する]ダイアログボックスで、[有効]をクリックし、[OK]をクリックしてダイアログボックスを閉じます。ローカルグループポリシーエディターを閉じます。

1