предотвратить замену файлов базы данных SQL на старые

предотвратить замену файлов базы данных SQL на старые

У меня есть база данных, которую я использую в своем приложении.

операция, которую я хочу предотвратить, заключается в следующем: если я остановлю SQL Server и перенесу файлы базы данных в другое место, затем запущу SQL Server и выполню некоторые операции, а затем остановлю службы SQL Server, заменю файлы базы данных старыми и запущу SQL Server: я хочу, чтобы SQL Server выдал ошибку и не открывал базу данных.

как я могу создать эту ситуацию, используя SQL Server 2012?

решение1

Если я правильно понял ваш вопрос, похоже, вы ищете что-то вроде прозрачного шифрования данных, в надежде не допустить, чтобы пользователь отсоединял базу данных, прикреплял ее к своему серверу, вносил изменения и снова прикреплял ее к исходному серверу. Прозрачное шифрование данных потребует от пользователя сертификата и закрытого ключа, чтобыприкреплятьиливосстановитьбазу данных на другой сервер.

Для этого требуется Enterprise(или Developer или Evaluation, ни один из которых не лицензирован для использования в производстве), и я не уверен, что это на 100% надежно, если у пользователя есть административный доступ к серверу. Вам нужно будет запретить пользователю иметь доступ к экспорту сертификата, например.

К сожалению, joeqwerty прав в том, что вам не нужно будет предоставлять пользователю административный доступ к серверу или доступ SA к SQL, а придется заблокировать разрешения NTFS пользователя на доступ к каталогам SQL и т. д.

Связанный контент