SQL Server透明数据加密替代解决方案-NetLib安全加密器
问题
在组织中将新计划与最佳操作实践相结合始终是一个挑战。为了保持市场竞争力,我们需要不断创新解决方案,以改善我们的客户体验。满足新计划可以带来可观的收入,但就数据泄露事件而言,将最新消息做成长期新闻将对有形和无形影响产生负面影响。作为SQL Server专业人士,我们不能无视监管要求和公认的SQL Server最佳做法,例如在线和离线加密我们的数据。我们的挑战是为组织提供跨众多应用程序以及SQL Server版本的无缝解决方案。我们如何正确加密SQL Server数据以保护组织?
解
无论您是否要遵守GDPR,HIPAA,PCI等法规,对SQL Server数据库进行加密都是要遵守的关键组成部分。SQL Server提供了几种不同的选项来加密数据库,包括使用企业版进行列级加密和透明数据加密。不幸的是,这两种选择都会付出很高的代价。SQL Server列级加密无疑是一个可行的选择。但是,通常,支持开发工作来更改所有应用程序以使用本机加密和解密存储过程的成本很高。同样,将您的所有SQL Server实例升级,迁移或整合到Enterprise Edition都是很耗时的,可能需要更改应用程序,并且许可成本是生产环境中的一大笔开支。
例如,将一台8核服务器从Standard升级到Enterprise Edition的费用可能超过80,000美元。对于需要为其SQL Server数据库提供加密解决方案的组织,这是一种常见方案。通常,当可以使用其他更具成本效益的替代方案时,这太昂贵了。我想介绍的一种解决方案是 NetLib的 Encryptionizer,它为所有版本提供无缝的企业级SQL Server加密。
Encryptionizer如何通过关键任务SQL Server为组织带来价值?
- 无缝-最新的加密标准和FIPS 140-2兼容,无需更改应用程序代码
- 易于使用–基于向导的简单界面可在整个企业范围内部署和管理加密
- 高性能–根据非正式测试,在大小适当且经过调整的服务器上, Encryptionizer比本机SQL Server TDE快10%至15%
- 多密钥管理–能够为特定服务器,备份,日志传送,复制等设置加密密钥,以提供多层保护以及集中式密钥管理
- 自动化–除基于向导的界面外,还有功能丰富的命令行界面(CLI)和基于脚本的安装程序,可自动执行部署或将加密功能嵌入应用程序中
- 端到端SQL Server支持–不仅支持旧版本应用程序和新部署的所有SQL Server版本,而且还支持系统数据库(主数据库,模型数据库,MSDB数据库和TempDB数据库),文件流数据,复制,日志传送,群集,AlwaysOn和Windows Server上的文件夹
- 单一企业加密应用程序- 加密器不仅仅支持SQL Server-任何基于Windows的应用程序(例如Exchange,MySQL,Access,IIS,Tomcat等)都将从加密器中受益,带有嵌入式应用程序的硬件(例如医疗设备)也可以从中受益。安全和集中管理。
- 支持所有版本的SQL Server,直至SQL Express和LocalDB。
加密程序如何保护SQL Server?
部署 Encryptionizer时,SQL Server上将安装密钥管理服务和内核模式驱动程序。接下来,启动“加密程序向导”以加密数据库并配置“密钥管理服务”,这应该在维护窗口期间执行。在此过程中,将关闭SQL Server以完成数据库加密,该数据库加密通常以每分钟5到10 GB的速率进行加密。完成后,将重新启动SQL Server,并且密钥管理服务将通过内核模式驱动程序处理SQL Server与数据库存储之间的所有交互。该过程是完全无缝的,不需要更改任何代码。
有关使用和不使用Encryptionizer的SQL Server的更详细的说明和比较,请查看以下资源- 自动整个数据库加密-工作原理。
如何为SQL Server配置加密器?
以下是基于 Encryptionizer向导的界面的主菜单 。在此界面上,您可以访问文档,管理密钥和API,执行其他向导,例如用于设置密钥管理服务,加密和解密数据库以及配置文件夹级加密的管理向导。
让我们开始使用Encryptionizer加密/解密向导。启动后,将启动启动屏幕,然后是 加密或解密文件的选项, 如下所示。对于此演示,我们将开始加密文件。
下一步是要 选择的文件进行加密浏览到SQL Server数据库以及选择的最终的加密文件的目标目录(即*密度纤维板,* .NDF和* .LDF)。如果存储空间有限,则可以选择覆盖现有数据库文件,也可以将文件写入新目录。完成后,就可以选择加密算法,密钥长度和密码,如下所示。
此时,加密过程可以开始,并且将在过程运行时更新向导。完成后, Encryptionizer将报告成功。
如果重新启动SQL Server,则新加密的数据库将无法访问但仍受保护。若要通过SQL Server关系引擎配置数据库的可访问性,必须配置NetLib密钥管理服务,该服务是使用管理向导从主菜单中启动的。下一步是选择要保护的SQL Server实例,如下所示。
选择SQL Server实例后,就该指定用于加密数据库并启用 Encryptionizer的加密密钥信息了 。这也是配置产品以支持数据库,备份,文件流,日志传送等的多个加密密钥的方式。
另外,启用 Encryptionizer时,您还有其他选项,包括:
- 加密主数据库
- 加密所有新的SQL Server数据库
- 加密新的SQL Server数据库备份
- 将加密密钥锁定到机器
- 仅加密特定对象的规则
为实例配置最终选项后,可以使用摘要屏幕查看选定的选项,然后将更改提交为安全的SQL Server实例,如下所示。
只需简单的安装并通过两个向导,即可在非常短的时间内保护数据库,而无需更改代码。您的数据库在联机,在磁盘上以及在备份时都进行了加密,这是保护客户数据并达到合规性(例如GDPR, HIPAA, PCI等)的重要一步 。