Questions tagged «transparent-data-encryption»

透明数据加密,一种用于为静态数据提供保护的功能。


2
查询列出数据库的加密证书
使用什么证书来加密实例上的每个数据库。 我可以使用以下方法获取数据,但是如何编写查询 USE master GO -- this provides the list of certificates SELECT * FROM sys.certificates -- this provides the list of databases (encryption_state = 3) is encrypted SELECT * FROM sys.dm_database_encryption_keys WHERE encryption_state = 3; 我注意到sys.certifcates.thumbprint和sys.dm_database_encryption_keys.encryptor_thumbprint列包含相同的数据。

3
我什么时候需要备份服务主密钥?
我正在阅读有关透明数据加密的一些文档和白皮书。一些文档还提到了备份服务主密钥(为澄清起见,我不是在谈论数据库主密钥)。我只是不完全理解为什么这样做是必要的,因为我可以使用TDE加密将数据库从服务器A(备份)备份/还原到服务器B(还原)而无需使用任何服务主密钥。 在什么情况下我需要还原服务主密钥?

1
SQL 2017 TDE数据库中的备份压缩导致损坏
在SQL Server 2017(CU3)上,每当我在一个TDE数据库上启用备份压缩时,备份过程始终会损坏数据库中的特定页面。如果我运行备份时不进行压缩,则不会损坏它。这是我为验证和重现此问题而采取的步骤: 在数据库“ TDE_DB1”上运行DBCC CheckDB;一切都很好,没有错误; 成功备份数据库而无需压缩;RESTORE VERIFYONLY表示一切都很好; 成功将数据库还原为“ TDE_DB2”;一切都很好,DBCC CheckDB没有显示任何错误; 使用压缩成功备份“ TDE_DB1”数据库;RESTORE VERIFYONLY错误,提示“检测到备份集损坏”; 尝试将数据库还原为“ TDE_DB2”;错误,说“ RESTORE在数据库中的页面(1:92454)上检测到错误” 重复步骤1-3;一切都很好; DROP“ TDE_DB1”和“ TDE_DB2”; 从备份中还原“ TDE_DB1”;一切都很好; 重复步骤1-5;得到相同的结果 总结一下:数据库和常规备份看起来不错,在数据库上运行CHECKDB并在备份上运行VERIFYONLY不会报告任何错误。使用压缩备份数据库似乎会导致损坏。 下面是有错误的代码示例。(注意:将压缩与TDE数据库一起使用需要MAXTRANSFERSIZE) -- Good, completes with no corruption; BACKUP DATABASE [TDE_DB1] TO DISK = N'E:\MSSQL\Backup\TDE_DB1a.bak' WITH CHECKSUM; RESTORE VERIFYONLY FROM DISK = N'E:\MSSQL\Backup\TDE_DB1a.bak' WITH CHECKSUM; RESTORE …

3
使用MAXTRANSFERSIZE和CHECKSUM时,无法还原启用TDE的数据库
更新:@AmitBanerjee -Microsoft SQL Server产品组的高级程序经理,确认MS将调查此问题,因为它是缺陷。 有没有人遇到在启用TDE并使用MAXTRANSFERSIZE> 65536的情况下还原在SQL Server 2016上进行的备份的问题(对于我而言,我选择了65537,以便可以压缩TDE数据库)和CHECKSUM? 下面是一个副本: --- create database create database test_restore go -- create table create table test_kin (fname char(10)) go -- Enable TDE use master GO CREATE CERTIFICATE test_restore WITH SUBJECT = 'test_restore_cert' GO SELECT name, pvt_key_encryption_type_desc, * FROM sys.certificates WHERE name = 'test_restore' GO …

2
TDE准备:用于还原的密钥/证书备份
我正在开发环境中工作,以更好地了解TDE加密。我让它与另一台服务器上的备份和还原一起工作。有几个问题,我知道我需要使用相应的私钥来备份证书。 USE master; GO BACKUP CERTIFICATE Test TO FILE = 'C:\Test.cer' WITH PRIVATE KEY (FILE = 'C:\Test.pvk', ENCRYPTION BY PASSWORD = 'Example12#') 发生故障时,需要在新服务器上移动/还原这些文件。如果需要还原到另一台服务器,还需要从源服务器备份什么呢? 还有关于私钥存储的建议吗?目前,我的想法是将证书,私钥和密码备份到KeePass数据库中,该数据库将单独备份并在异地复制。 但这留下了将KeePass私钥备份到哪里的问题?

3
是否可以通过还原MASTER数据库来恢复TDE证书?
(幸运的是,我们目前还没有处于这种情况下,只是提前计划,看看如果发生的话我们的选择将会是什么。) 对于使用透明日期加密(TDE)加密的数据库,除非您拥有用于对其进行加密的证书的备份,否则无法恢复该数据库备份的副本。 如果您没有那个怎么办?还有其他选择吗? 如果服务器整体出现故障,在新硬件上还原MASTER数据库的备份是否还会还原证书?

2
使用SQL Server TDE编写远程备份时,网络通信是否已加密?
他们确实说没有“愚蠢的问题”之类的东西,所以去了: 我了解SQL Server 透明数据加密(TDE)会加密静态数据,以便在有人闯入您的存储并窃取这些文件时对您的数据库文件(.mdf)和备份文件(.bak)进行加密。我还了解到,从磁盘读取数据时,数据将被解密,因此不会在内存中(移动中)对数据进行加密。因此,运行远程查询(从SensitiveData中选择*)的用户请求的数据在通过网络传输时不会被加密,因此很容易被拦截。 因此,假设以上所有方法都是正确的,这是我的愚蠢问题:如果我的SQL Server实例在计算机A上并且我的TDE数据库备份被写到远程计算机B上的存储中,那么备份操作数据是否在从计算机A传输时被加密了?将计算机A写入计算机B的磁盘上?我认为必须这样做(因为我想加密操作首先在计算机A上进行),但是在任何Microsoft文档或博客中都找不到对此的确认。同样,在还原操作过程中-是否有人在计算机B处拦截从磁盘上传输的数据以在计算机A上还原数据库-他们会发现运动中的数据已加密吗?

3
SQL Server TDE的替代方法
由于包含透明数据加密功能的SQL Server Enterprise Edition的成本很高,我在寻找替代产品,但只找到了两个选择: DbDefence NetLib加密器 谁能提供上述两种产品的使用经验的详细信息(性能影响,易用性等)? 还有其他替代SQL Server TDE的方法吗? 注意:我们当前正在使用SQL Server 2008 R2 Standard Edition。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.