Лучшая практика для защиты данных в базе данных SQL Server 2008 - PullRequest
2 голосов
/ 18 марта 2012

Я создаю веб-приложение ASP.net для моего клиента. Это будет размещено в их организации (это требование обязательно). Одним из их требований является защита данных в базе данных, чтобы их внутренние администраторы и администраторы баз данных не могли видеть данные, если они попадут на сервер или получат резервную копию базы данных.

Я использую Linq-to-SQL и ADO.NET для запроса базы данных.

Что считается лучшим способом защиты данных, содержащихся в базе данных?

Одним из вариантов, которые я рассматриваю, является добавление уровня шифрования / дешифрования между бизнес-уровнем и уровнем доступа к данным в приложении для защиты данных.

Я обеспокоен тем, что этот подход приведет к снижению производительности БД и производительности приложений.

Любые идеи или предложения приветствуются.

PS. Вариант, который будет быстрым и простым в реализации, будет еще лучше; -)

1 Ответ

1 голос
/ 18 марта 2012

Предполагается, что вы используете Windows 2008 или Windows 2008 R2 (или Vista или 7).

Не шифруйте данные в базе данных, это снизит производительность (до предела скорости), и вы потеряете много функциональности базы данных.

Шифрование с использованием BitLocker или EFS (с EFS вы можете зашифровать только файлы базы данных, и его проще в настройке и обслуживании; не забудьте сделать резервную копию сертификатов шифрования).

EFS:

Разрешить администраторам выполнять резервное копирование только с помощью Windows Backup (командной строки с wbadmin должно быть достаточно, и вы можете предоставить это тоже). Я рекомендую сделать резервную копию всего тома.

Эти администраторы резервного копирования будут входить в систему на этом компьютере с использованием учетных данных SEPARATE, отличных от тех, на которых работает SQL Server 2008, и они НЕ ДОЛЖНЫ иметь доступ к ключам шифрования и / или НЕ ДОЛЖНЫ устанавливать их.

Администраторы резервного копирования смогут создавать резервные копии зашифрованных файлов в том виде, в каком они есть, но никогда не будут иметь к ним доступа, поскольку Windows Backup использует VHD в качестве формата резервного копирования (а файлы по-прежнему находятся на томе NTFS, зашифрованном с помощью этих секретных сертификатов). .

Не забудьте не дать им разрешения на вход в базу данных и только чтение / сброс данных. Проверьте эту настройку и выполните восстановление (зашифрованные данные легко теряются, если вы не готовы).

...