TDE可以为我们的数据库提供加密保护,但是,不是任何情况下都可以随意开启TDE的,同时开启TDE后,我们的数据库维护管理工作也需要进行一些调整。

下面我们就先看看开启TDE需要的条件吧!

无法正常开启TDE的情况只有一种,那就是数据库中有只读文件组

一般,我们查询sys.dm_database_encryption_keys可以得到DEK的状态,encryption_state为1、2、3、4、5分别表示没有加密、加密中、已加密、密钥改变中、解密中的状态。正常情况下,当我们设置正确并开启TDE后,encryption_state=3,表示表示TDE开启,数据库已加密。但是当数据库中有只读文件组的时候,我们设置正确并开启TDE时,SQL Server不会有任何异常,打开数据库属性窗口也可以看到TDE已开启。不过我们会发现,encryption_state永远等于2,也就是说一直处于加密中状态而无法完成。所以,如果数据库有只读文件组,那么将无法成功开启TDE。

另外一种情况是,如果数据库使用了filestream数据类型VARBINARY(MAX),那么文件流数据类型将不会被加密,不过数据库本身还是可以使用TDE来进行加密的。

再来看看开启TDE后,都会造成哪些影响。

首先考虑的是数据库的恢复

因为开启TDE后,数据库的数据文件、日志文件、备份文件都会被加密,所以如果没有TDE的证书备份的话,将无法进行数据库的恢复。这里不仅仅指数据库备份的恢复,还包括事物日志传送和数据库镜像等,如果辅助服务器上没有有效的TDE证书,那么事物日志传送和数据库镜像都会失败。

其次我们看下数据库的备份压缩

在SQL Server 2008上,正常的数据库备份压缩,可以达到90%以上的压缩比,即压缩后的文件只有压缩前的10%以下的大小;但是开启TDE后,备份压缩的效率就非常不明显了,压缩后的文件差不多都是压缩前的90%以上。

最后,还有一个问题是系统临时数据库tempdb。

如果在SQL Server实例上的任何数据库上开启了TDE,那么这个实例上的tempdb也将会自动加密,这将导致其他未开启TDE的数据库在使用tempdb数据库时性能下降。

基本上,开启TDE所要考虑的方面就是以上5点。如果你想开启TDE用来保护数据库,而且你的数据库中没有只读文件,也没有filestream数据类型或者有filestream数据类型,但是这个类型的数据不加密也可以接受,并且你也考虑到了数据库恢复、备份压缩以及tempdb数据库使用上会有一些变化,这些变化都不会对的系统造成重大的影响,你都可以接受的话,那么你就可以开启TDE了。

何时可以开启透明数据加密(TDE)?的更多相关文章

  1. Oracle数据安全解决方案(1)——透明数据加密TDE

    Oracle数据安全解决方案(1)——透明数据加密TDE2009年09月23日 22:49:00 华仔爱技术 阅读数:7991原文地址: http://www.oracle.com/technolog ...

  2. SQLServer · 最佳实践 · 透明数据加密TDE在SQLServer的应用

    转:https://yq.aliyun.com/articles/42270 title: SQLServer · 最佳实践 · 透明数据加密TDE在SQLServer的应用 author: 石沫 背 ...

  3. 透明数据加密 (TDE)常见问题解答

    透明数据加密 (TDE)常见问题解答问题任何人只要有权访问加密数据就能对其进行解密吗?TDE 会带来哪些开销?哪些加密算法可与 TDE 一同使用?可以使用第三方加密算法代替 TDE 提供的算法吗?可以 ...

  4. 第九篇 SQL Server安全透明数据加密

    本篇文章是SQL Server安全系列的第九篇,详细内容请参考原文. Relational databases are used in an amazing variety of applicatio ...

  5. 【译】第九篇 SQL Server安全透明数据加密

    本篇文章是SQL Server安全系列的第九篇,详细内容请参考原文. Relational databases are used in an amazing variety of applicatio ...

  6. Oracle-11g 中使用表空间透明数据加密(TDE)

    Oracle-11g 中使用表空间透明数据加密(TDE)的限制 TDE 表空间加密方式会在数据读写过程中加解密数据.与在 SQL 层面做加解密的 TDE 列加密方式相比,其限制要大幅减少.例如:数据类 ...

  7. SQL Server安全(9/11):透明数据加密(Transparent Data Encryption)

    在保密你的服务器和数据,防备当前复杂的攻击,SQL Server有你需要的一切.但在你能有效使用这些安全功能前,你需要理解你面对的威胁和一些基本的安全概念.这篇文章提供了基础,因此你可以对SQL Se ...

  8. QQ2010如何开启透明效果皮肤

    QQ2010可在WIN7下实现皮肤透明效果. 腾讯已于近日发布了QQ2010的BETA版本,经笔者试验,可在WIN7下实现皮肤透明化效果. 设置如下: 1.先打开QQ皮肤控制面板,如下: 2.然后任选 ...

  9. 在SQL Server 2008中执行透明数据加密

    问题 安全是任何公司的一个主要考量.数据库备份容易被偷并被恢复到另一个SQL Server实例上.当我们浏览SQL Server 2008的新特性时,我们对一个叫做透明数据加密的特性很感兴趣,我们可以 ...

随机推荐

  1. 方便代理下单的EcStore收货地址一键分析插件,同时支持淘宝/京东/一号店

    使用EcStore开展分销的网站,代理需要经常代客下单,每个客户收货地址都不同,要选择和填写多个内容才能完成地址输入:省.市.区.详细地址.收货人姓名.手机电话等,非常麻烦,也容易输入错误.安装EcS ...

  2. HTML动画(难点)

    animation-delay这个属性是规定动画开始前等待几秒才开始.本来是很好理解的,但是当时就有个疑问:假如我的动画是连续执行好多次的情况下的话,是第一次执行前才会延迟还是每次执行前都会延迟呢?答 ...

  3. tableview 里面的 必须配套使用的方法

    1: 如果不配套的先给出  footer的高度,那么  即时有view 可能也显示不出来 - (CGFloat)tableView:(UITableView *)tableView heightFor ...

  4. iOS高仿城觅-感谢大神分享

    项目展示,由于没有数据,所以所有的cell显示的都是我自己写的数据 抽屉 首页部分效果 首页效果 部分效果 发现 消息 搜索 设置 模糊效果 代码注释展示 代码注释展示 还有很多细节就不一一展示了,大 ...

  5. LODS LODSB LODSW LODSD 例子【载入串指令】

    http://qwop.iteye.com/blog/1958761 // lodsb.cpp : Defines the entry point for the console applicatio ...

  6. HTML5实战之桌面通知

    桌面通知功能能够让浏览器即使是最小化状态也能将消息通知给用户.这和WebIM是最为天然的结合.不过,目前支持Desktop Notification功能的浏览器只有Chrome5+. 关于通知的基础知 ...

  7. LightOj 1230 Placing Lampposts(树形DP)

    题意:给定一个森林.每个节点上安装一个灯可以覆盖与该节点相连的所有边.选择最少的节点数num覆盖所有的边.在num最小的前提下,合理放置num个灯使得被两个灯覆盖的边最多? 思路:F[i][0]代表没 ...

  8. Visual Studio 2013 Professional Key

    今天发现家里的VS2013专业版过期了,于是google百度一顿大搜,多数key都不能用,不过还是找到一个key可以使用的. Visual Studio 2013 Professional Key: ...

  9. ssh添加公钥

    ssh-keygen生成公钥存储在文件: ~/.ssh/id_rsa.pub 如果ssh-add -l命令后没有一串长的字符串, 把私钥密钥对的ID(fingerPrint)加入ssh的认证代理ssh ...

  10. 学习javascript基础知识系列第三节 - ()()用法

    总目录:通过一段代码学习javascript基础知识系列 注意: 为了便于执行和演示,建议使用chrome浏览器,按F12,然后按Esc(或手动选择)打开console,在console进行执行和演示 ...