2008-11-26 3 views
4

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

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

Какие продукты вы знаете? Какие у меня варианты?

(Это деловое требование, как бы глупо это ни показалось).

Update

Это для SQL Server 2008 Express

ответ

2

Существует сторонняя сторона xp_crypt. Это было уже много лет. Это расширенная хранимая процедура (то есть, DLL)

+2

Поддержка xp_crypt в России, поэтому имейте это в виду. Разница в часовых поясах может повлиять на ожидания, возникающие при возникновении проблем с клиентами. У нас возникли проблемы с потерей лицензии xp_crypt. Наши клиенты были во власти их возвращения к нам, чтобы решить проблему. – 2012-04-10 16:06:31

0

SQL Server 2008 поддерживает шифрование базы данных изначально. Проверьте документацию на Transparent Data Encryption (TDE).

+1

Это также для экспресс-версии sql? – Blankman 2008-11-26 15:45:00

+0

Хм. Нет, я так не думаю – 2008-11-26 17:03:11

0

Вы можете шифровать хранимые процедуры, которые могут защитить вашу логику.

TDE доступен только для предприятий.

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

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

0

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

SQL Server 2005 и выше имеют встроенные функции шифрования. Посмотрите на электронную книгу «Книги онлайн», и особенно в главе 5 «Шифрование книги развития эксперта SQL Server 2005 от Adam Machanic» (технически Лара Руббельке написала главу 5, хотя).

Обратите внимание, что вы хотите только зашифровать некоторые столбцы - те, которые вы никогда не попытаетесь найти, поскольку зашифрованные столбцы в значительной степени бесполезны для индексирования. Книга Адама Мачаника предлагает пути решения этой проблемы.

3

Проблема с шифрованием данных внутри базы данных заключается в том, что до тех пор, пока база данных живет на машине клиента (как вы указали, они работают с SQL 2008 Express, поэтому я уверен, что он живет на клиентских компьютерах или ноутбуках), то они могут попасть в данные. Они могут настроить защиту на экземпляр так, чтобы у них были привилегии SA, и оттуда они могли получить данные, период. Это не так.

Что вам нужно сделать, это зашифровать данные до того, как они попадут в базу данных: зашифруйте их в своем приложении. Внутри приложения зашифруйте данные, которые вы хотите сохранить в каждом чувствительном поле. Как указано в другом плакате, вы не хотите шифровать поля идентификатора, потому что они используются для индексирования.

0

Encryptionizer для SQL Server поддерживает шифрование столбцов и целых баз данных для SQL 2000 по 2008 год, Express через Enterprise. http://www.netlib.com

0

Другим решением для прозрачного шифрования SQL Server является DbDefence Бесплатно для баз данных менее 77 МБ.

Смежные вопросы