現象
Microsoft SQL Server 2016 または旧バージョンの SQL Server データベースを使用していて、対称キーの暗号化を使用して暗号化されたデータまたはオブジェクトが含まれていることを前提としています。 この状況では、次の条件に該当する場合、Windows の SQL Server 2017 で同じ対称キーを使用して、データまたはオブジェクトの暗号化を解除できない場合があります。
-
データベースは SQL Server 2017 に復元されます。
-
既存の対称キーがドロップされ、同じ対称キーが作成されます。
注: この問題は、sql server の旧バージョンの対称キーが、SQL Server 2017 で削除または再作成されない場合には発生しません。
原因
この問題が発生するのは、SQL Server 2017 で SHA2 ハッシュアルゴリズムを使用してパスフレーズをハッシュするためです。 Sql server 2016 およびそれ以前のバージョンの SQL Server では、セキュリティで保護されていないと見なされる SHA1 アルゴリズムを使用しています。
解決方法
この問題は、SQL Server の次の累積的な更新プログラムで修正されています。
注 この問題を解決するには、累積更新プログラムのインストール後に、 T競合フラグ (TF) 4631 を有効にする必要があります。このトレースフラグを有効にするには、SQL Server の起動オプションを使用するか、DBCC TRACEON を使用します。 TF 4631 が既に有効になっている場合は、対称キーを作成する必要があります。
SQL Server 用の新しい累積更新プログラムには、以前の累積的な更新プログラムに含まれていたすべての修正プログラムとすべてのセキュリティ修正が含まれています。 SQL Server の最新の累積的な更新プログラムを確認します。
状態
マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。
関連情報
ソフトウェアの更新を説明するために Microsoft が使用する 用語について説明します。