因此在Windows Server 2008平台上,我们现在对数据库的数据加密保护手段已经有了4种,分别是:
- Windows 2000开始加入的EFS功能
- Windows Vista和Windows Server 2008开始的BitLockers
- SQL Server 2005开始引入的Cell级加密
- SQL Server 2008加入的TDE
关于这4项技术的对比会在稍后的帖子中讨论.
SQL Server的数据加密框架
先看一下SQL Server 2005的加密体系:
然后再看一下SQL Server 2008中的数据加密体系:
相比之下,SQL Server 2008的加密体系多出了TDE这条路径,就是上图中虚线部分,SQL Server 2008会通过DMK(Database Master Key数据库主密钥)直接加密数据文件,也可以通过EKM(Extensible Key Management外部密钥管理)直接加密数据文件。
SQL Server 2005与SQL Server 2008相同之处在于两者都是用Windows操作系统提供的DPAPI(Data Protection API数据保护应用开发接口)来保护SMK(Service Master Key服务主密钥),每个SQL Server的实例都拥有自己的SMK
EFS对SQL Server的性能影响主要原因是SQL Server在EFS加密文件上执行IO的时候IO操作是同步操作,也就是说如果SQL Server的工作线程需要一次IO就必须等到当前的文件IO结束,因此SQL Server中的Read Ahead机制和CheckPoint机制都会受到影响。关于这个问题的具体讨论可以参考微软支持网站的KB922121。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9079672/viewspace-218054/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/9079672/viewspace-218054/