|
详解SQL Server 2014的数据库加密特性
SQL Server给DBA提供了几种加密数据并通过网络传输数据的方法,同时它还支持备份或将其存储在服务器或网络上。
·对称密钥:它有较高的性能,强大的加密效果适用于大多数加密需求。它使用相同的密钥去加密和解密数据。 ·证书:它有较强的保护效果和较高的性能。它可以与一个用户关联。证书必须用数据库主密钥签名。 为了支持加密-解密操作,字段级加密要求修改应用程序代码和数据库模式,因为所有加密的数据都必须使用varbinary数据类型存储。字段级加密方法提供了更加细粒度的SQL Server加密技术,因此我们可以用它加密一个表中的一个单元格。此外,数据只有在使用时才会解密,这意味着当页加载到内存时,数据仍然不是明文。 加密SQL Server连接 SQL Server加密提供以下两种网络数据加密选择:Internet Protocol Security (IPSec)和Secure Sockets Layer (SSL)。 IPSec由操作系统实现,它支持使用Kerberos、证书或预共享密钥执行身份验证。IPSec提供了先进的协议过滤机制,可以根据协议和端口来阻挡流量。我们可以用本地安全策略或通过组策略(Group Policy)来配置IPSec。IPSec兼容Windows 2000以上版本。要使用这个方法,客户端和服务器的操作系统都必须支持IPSec。 SSL由SQL Server实现。它主要用于支持Web客户端,但是它也可以用于支持原生SQL Server客户端。当客户端请求一个加密连接时,SSL就会验证服务器。如果运行SQL Server实例的计算机有一个来自于Public Certificate Authority (PCA)的证书,那么这个计算机的标识和SQL Server实例将保证证书链通向可信的根授权。这种服务器端验证要求客户端应用程序所在的计算机配置为信任服务器所使用证书的根授权。这里可以使用自签名证书的加密方式,但是自签名证书的保护力度有限。 相对于IPSec而言,SSL具有两个主要优势:客户端配置很少和服务器配置很简单。 其他SQL Server加密方法 加密SQL Server对象定义:我们可以在创建存储过程、视图、函数和触发器时使用WITH ENCRYPTION子句,从而加密这些对象的定义文本。在加密之后,我们就无法解密这些对象的文本。 加密备份:加密备份时必须使用主数据和证书的数据库主密钥(DMK)或非对称密钥。在加密备份时,我们必须指定一个加密算法,以及一个保证加密密钥安全的加密器。 通过Windows EFS进行文件级加密:从Windows Server 2000开始,微软就引入了一个文件系统加密(Encrypting File System, EFS)特性,它可以加密操作系统的文件。我们可以使用EFS特性加密整个SQL Server数据目录。和SQL Server的原生加密方法类似,EFS也依赖于Windows DPAPI。与透明数据加密不同,它不会自动加密数据库备份。在SQL Server 2008之前,EFS是加密NTFS磁盘中数据库文件的唯一方法。这是因为,在启用EFS之后,SQL Server I/O操作就变成同步的。在EFS加密数据库文件的当前I/O操作完成之前,工作者线程会一直处于等待状态。 BitLocket驱动器加密:BitLocket驱动器加密是Windows Vista和Windows 7旗舰版和企业版、Windows 8专业版和企业版桌面操作系统、Windows Server 2008、Windows Server 2008 R2和Windows Server 2012的一个全盘加密特性。它还能使用一个AES加密算法加密空闲数据。BitLocket不存在EFS那样的性能问题。
责编:王雅京
微信扫一扫实时了解行业动态
微信扫一扫分享本文给好友
著作权声明:kaiyun体育官方人口 文章著作权分属kaiyun体育官方人口 、网友和合作伙伴,部分非原创文章作者信息可能有所缺失,如需补充或修改请与我们联系,工作人员会在1个工作日内配合处理。
|
最新专题
推荐圈子
|
|