我浏览了这个链接:https://msdn.microsoft.com/en-us/library/bb934049(v=sql.110).aspx是它,它只加密数据库,那么表中的列呢?
我使用的语法是
USE master;
GO
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<UseStrongPasswordHere>';
go
CREATE CERTIFICATE MyServerCert WITH SUBJECT = 'My DEK Certificate';
go
USE AdventureWorks2012;
GO
CREATE DATABASE ENCRYPTION KEY
WITH ALGORITHM = AES_128
ENCRYPTION BY SERVER CERTIFICATE MyServerCert;
GO
ALTER DATABASE AdventureWorks2012
SET ENCRYPTION ON;
GO但是列对我来说是可见的,如何也使用TDE加密列
我是TDE的新手,请帮帮我。
发布于 2016-02-18 23:39:25
TDE是一种加密类型,用于加密数据库的数据和日志文件。如果有人设法窃取您的备份文件,他们将无法在没有数据库加密密钥的情况下解密备份文件,该密钥存储在Master数据库中。即使您想恢复TDE加密数据库的备份,您也必须在目标数据库中具有相同的DEK。启用TDE还会加密tempdb。
要获得更清晰的理解,请参阅微软的联机丛书,您也可以使用TechNet中的以下内容。Transparent Data Encryption (TDE)
在任何系统上启用之前,请确保阅读更多内容并了解其效果、优点和缺点。
发布于 2018-02-21 22:58:17
TDE是透明的数据加密,即它不会像连接的用户和应用程序所感知的那样影响您的数据库。它所做的是在将数据保存到磁盘之前对其进行加密,并在将其读回工作集时对其进行解密。
如果您希望加密每个列的数据,您可以看看称为Always Encrypted的SQL Server功能(仅在v2016和更高版本上可用)或外部解决方案,如CryptDB (研究项目,仅适用于MySQL)或Prisma/DB。它们提供每列加密,并且也与TDE兼容。
https://stackoverflow.com/questions/35477935
复制相似问题