• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

软件测试中用EKM提升SQL Server 2008数据库安全

发布: 2010-5-31 08:49 | 作者: 网络转载 | 来源: 领测软件测试采编 | 查看: 19次 | 进入软件测试论坛讨论

领测软件测试网

软件测试中用EKM提升SQL Server 2008数据库安全

1、为什么要添加 EKM功能?
   我们知道,为防止 数据库和日志文件被无权限的人访问或黑客攻击,加密是一种很主要的手段。此前的SQL Server自带的数据加密功能可以加密文件,但它将密钥存储在SQL Server中,这带来了安全隐患。

SQL Server 2005并不允许在本地SQL Server 2005加密环境中运用第三方的密钥或密钥管理程序。这样,如果公司在其它运用 中运用第三方加密产品对数据执行 了加密,而你却不能用这个产品对SOL Server的数据执行 加密或管理SQL Server的密钥,这是相当麻烦的。

EKM弥补了这个弱点,它允许密钥存储在数据库之外,包括特殊的硬件(例如智能卡、USB设备)或被称为硬件安全模块(Hardware Security Modules,HSM)的软件模块中。因此,在SQL Server 2008中引入EKM是非常实用的。

2、将密钥存储在HSM中

EKM功能在SQL Server 2008的企业版、开发版、评估版中都可用,它允许密钥存储在数据库之外的HSM中,与加密数据分开存储。

把密钥存储在HSM中可以防止 它们被数据库所有者和其他高级别数据库用户访问,因为这些用户没有权限访问存储密钥的HSM。只有那些在加密解密流程中拥有HSM设备权限的最终用户,才能用这些密钥加密新数据或查看现有巳加密数据(须要留心的是:如果HSM 设备没有运用过,sysadmin用户组的成员仍然可以访问密钥)。如果要让用户可以运用第三方的HSM,须要在SQL Server 2008的EKM中将这些第三方厂商的EKM/HSM模块注册到SOL Server 2008中。

3、如何 启用/禁用EKM?

(1).启用EKM

要在数据库中运用 EKM,必须先用系统存储流程 sp_configure来启用SOL Server实例的EKM功能。

启用EKM提供程序高级选项

sp_configure 'show advanced options',1;

GO

RECONFIGURE;

GO

启用EKM提供程序

sp_configure 'EKM provider enabled',1;

GO

RECONFIGURE;

GO

启用EKM之后,要建立一个EKM Provider(或者更多,你可能用到了多个HSM ),运用新的CREATE CRYPTOGRAPHIC PROVIDER的DDL(Data Definition Language,数据解释语言)语句。

CREATE CRYPTOGRAPHIC PROVIDER EKM_Prov

FROM FILE = 'C:\EKM_Files\KeyProvFile.dll';

GO

启用了EKM并建立了Provider之后,就可以用这个Provider作为密钥。而如果要用EKM Provider模块执行 安全登录,我们也可以用它来执行 认证。

(2).禁用EKM

在某些情况下,我们可能须要在数据库中禁用一个Provider并启用新的Provider。例如,如果公司选择了另外一个第三方密钥提供商作为标准。在SOL Server 2008中,我们可以禁用Provider,但仍然把它保留在数据库中,在准备好之后再长久删除它,这样就可以从容地找出运用到旧Provider的对象,把它们修改为运用新的Provider。不过,笔者建议最好保留旧的Provider,以防出错。要禁用一个Provider,运用 ALTER CRYPTOGRAPHIC PROVIDER语句,可执行如下命令:

ALTER CRYPTOGRAPHIC PROVIDER pEKM_Prov_ModuIe
  FROM FILE=''DISABLE

4、如何 获知EKM运用情况?

部署和实施EKM的数据库管理员和开发人员还须要对存储EKM Provider的元数据视图及有关的信息有一定的认识。SQL Server 2008提供了一系列新的目录视图、动态管理视图和动态管理函数,数据库管理员们可以用它们检查EKM Provider和EKM的运用情况。

运用 这些视图和函数我们可获取与EKM有关的信息,例如SQL Sewer实例中正在运用的Provider列表、运用 EKM 的认证信息列表、数据库中每个Provider ID的密钥列表、rovider的属性,以及每个Provider ID运用的加密算法等。

总结:通过以上对EKM相比较较基本的分析,我们看到SQL Server的加密功能在SQL Server 2008中有了很大的提升。很多数据库管理员为能不能要运用加密而犹豫不决,这是因为他们担心密钥的存储疑问,以往密钥和加密数据是存储在一起的,而现在SQL Sewer 2008中有了一个新的工具,它可以消除管理员们的这个担心,EKM功能值得一用。

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

TAG: server Server SERVER sql SQL Sql 软件测试 数据库 EKM


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网