Назад | Перейти на главную страницу

Добавлять шифрование на уровне столбцов в SQL Server 2008 постфактум?

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

Это упростило бы разработку приложений через beta1 при записи данных в виде открытого текста, а затем добавило бы шифрование между beta1 и beta2. Возможно ли это в SQL Server 2008 Express? Есть ли у такого подхода существенные недостатки?

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

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

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