当前位置: 首页 > 科技观察

【SQLServer2016数据加密新功能实践】如何测试AlwaysEncrypted安全特性?

时间:2023-03-13 00:38:16 科技观察

在《三步配置Always Encrypted安全功能》一文中,我们介绍了如何创建一个包含加密列的表。接下来,我们可以使用SQLServer导入导出向导复制表的数据,然后进一步验证数据副本是否加密。  要实现对“dbo.Contact_AlwaysEncryptedDemo”表的数据导入操作,请先打开导入导出向导。在欢迎屏幕上单击“下一步”。在选择数据源界面(如图4),进行如下配置:  数据源:在下拉列表中选择SQLServerNativeClient11.0。  服务器名称:输入源数据所在的SQLServer实例的名称。  身份验证:选择连接数据源的身份验证方式。  数据库:选择源数据所在的数据库。例如,在本例中我们选择了“OULTANDER”数据库。    图4:选择数据源页面  点击下一步进入“选择目标”页面(图5)。本页面配置内容如下:  数据源:在下拉列表中选择.NETFrameworkforSqlServer的数据提供者。  将列加密属性设置为“启用”。  配置其他相关属性(例如:数据源、初始目录和认证相关关键字)。    图5:选择目标页面  点击下一步,进入“选择表复制或查询”页面。您在此页面上有两个选项。您可以选择复制表和视图,也可以选择在指定数据源中执行查询语句获取结果集。在这里,我会将表“dbo.Contact”中的所有数据复制到“dbo.Contact_AlwaysEncryptedDemo”表。  在“选择源表并查看”页面(图6),选择“dbo.Contact”表作为源表,选择“dbo.Contact_AlwaysEncryptedDemo”表作为目标表,点击“下一步”按钮。    图6:选择源表和查看页面  点击“下一步”按钮,进入“保存并运行包”页面(图7)。选择“立即运行”复选框并单击“下一步”按钮。    图7:保存并运行包页面  下一步会进入配置完成页面(图8),在这里可以看到你所做的所有选择。单击“完成”运行任务包。    图8:完成向导页面  如果我们要验证数据是否加密,我们可以查询加密表。在这个例子中,当我查询“dbo.Contact_AlwaysEncryptedDemo”表时,系统会返回结果(图9),加密列数据将显示为二进制数据(图9)。    图9查询“dbo.Contact_AlwaysEncryptedDemo”表返回的结果。  希望以上信息能对您的工作有所帮助。如有不妥之处,欢迎留言指正。