首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用TDE (透明数据加密)加密表SQL的列值

如何使用TDE (透明数据加密)加密表SQL的列值
EN

Stack Overflow用户
提问于 2016-02-18 17:47:12
回答 2查看 1.2K关注 0票数 2

我浏览了这个链接:https://msdn.microsoft.com/en-us/library/bb934049(v=sql.110).aspx是它,它只加密数据库,那么表中的列呢?

我使用的语法是

代码语言:javascript
复制
    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的新手,请帮帮我。

EN

回答 2

Stack Overflow用户

发布于 2016-02-18 23:39:25

TDE是一种加密类型,用于加密数据库的数据和日志文件。如果有人设法窃取您的备份文件,他们将无法在没有数据库加密密钥的情况下解密备份文件,该密钥存储在Master数据库中。即使您想恢复TDE加密数据库的备份,您也必须在目标数据库中具有相同的DEK。启用TDE还会加密tempdb。

要获得更清晰的理解,请参阅微软的联机丛书,您也可以使用TechNet中的以下内容。Transparent Data Encryption (TDE)

在任何系统上启用之前,请确保阅读更多内容并了解其效果、优点和缺点。

票数 1
EN

Stack Overflow用户

发布于 2018-02-21 22:58:17

TDE是透明的数据加密,即它不会像连接的用户和应用程序所感知的那样影响您的数据库。它所做的是在将数据保存到磁盘之前对其进行加密,并在将其读回工作集时对其进行解密。

如果您希望加密每个列的数据,您可以看看称为Always Encrypted的SQL Server功能(仅在v2016和更高版本上可用)或外部解决方案,如CryptDB (研究项目,仅适用于MySQL)或Prisma/DB。它们提供每列加密,并且也与TDE兼容。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35477935

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档