現象
対称キー暗号化を使用して暗号化されたデータまたはオブジェクトがある 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 用の次の累積的な更新プログラムで解決されています。
SQL Server 2017 の累積的な更新プログラム 2
注釈 この修正プログラムでは、累積的な更新プログラムをインストールした後に 、トレース フラグ (TF) 4631 を有効にする必要があります。 このトレース フラグは、SQL Server のスタートアップ オプションを使用するか、DBCC TRACEON を使用して有効にできます。 対称キーは、TF 4631 が有効になっているら作成する必要があります。
SQL Server の累積的な更新プログラムについて:
SQL Server 用の新しい累積的な更新プログラムには、以前の累積的な更新プログラムに含まれていたすべての修正プログラムとすべてのセキュリティ修正プログラムが含まれています。 SQL Server の最新の累積的な更新プログラムを確認してください。
SQL Server 2017 の最新の累積的な更新プログラム
状態
Microsoft は、これが "適用対象" セクションに記載されている Microsoft 製品の問題であることを確認しました。
参考資料
マイクロソフトでソフトウェア更新プログラムの説明に使用する用語集を参照してください。