Симптоми
Да предположим, че имате Microsoft SQL Server 2016 или по-стара версия на база данни на SQL Server, която има шифровани данни или обекти с помощта на функцията за шифроване на симетрични ключове. В този случай е възможно да не можете да дешифрирате данните или обектите с помощта на един и същ симетричен ключ в SQL Server 2017 за Windows, ако са TRUE следните условия:
-
Базата данни се възстановява в SQL Server 2017.
-
Съществуващият симетричен ключ е отпаднал и се създава един и същ симетричен ключ.
Забележка Този проблем няма да възникне, ако Симетричният ключ от по-стара версия на SQL Server не бъде пропуснат или пресъздаден в SQL Server 2017.
Причина
Този проблем възниква, тъй като SQL Server 2017 използва алгоритъма за хеширане на SHA2, за да накълца паролата. SQL Server 2016 и по-стари версии на SQL Server използват алгоритъма за SHA1, който вече не се счита за защитен.
Решение
Този проблем е коригиран в следната сборна актуализация за SQL Server:
Кумулативна актуализация 2 за SQL Server 2017
Забележка Тази корекция изисква Tфлагът T Race (TF) 4631 да бъде разрешен, след като инсталирате сборната актуализация. Този флаг за проследяване може да бъде разрешен с помощта на опцията за стартиране на SQL Server или с помощта на DBCC TRACEON. Симетричният ключ трябва да бъде създаден, след като TF 4631 вече е активиран.
Всяка нова сборна актуализация за SQL Server съдържа всички поправки и всички корекции на защитата, които са били включени в предишната сборна актуализация. Вижте последните сборни актуализации за SQL Server:
Състоянието
Microsoft потвърди, че това е проблем в продуктите на Microsoft, които са посочени в секцията "важи за".
Препратки
Научете повече за терминологията, която Microsoft използва, за да опише софтуерни актуализации.