标签: transparent-data-encryption

机器主机入侵时SQL Server数据保密

我必须承认我是一名程序员,即使我没有相同的背景,我也正在努力学习一些有关 DBA 的知识。我试图了解 SQL Server 上的安全性提供了什么以及如何使用静态数据加密。

我的问题是,如果托管 SQL Server 实例的计算机遭到未经授权的访问,加密将如何保护数据?我的猜测根本不是。

我的意思是,假设 SQL Server 在放置在数据中心并“连接”到互联网的虚拟机上运行。如果攻击者将获得虚拟机的控制权,那么我认为静态数据保护的作用就很小。

事实上,攻击者可以获得管理员权限(作为操作系统用户),重置 SQL Server 凭据并以“sa”身份登录,然后即使 SQL Server 文件通常是加密的,他也可以以纯文本格式导出它们。

在这种情况下,是否有任何方法可以保护 SQL Server 的安全,或者如果操作系统级别遭到破坏,SQL Server 将被视为“丢失”?

security sql-server transparent-data-encryption

4
推荐指数
1
解决办法
123
查看次数

TDE 无法加密数据库

为了加密 SQL 数据库,我运行以下命令:

CREATE CERTIFICATE <certname> ENCRYPTION BY PASSWORD = '<UseStrongPasswordHere>'
WITH SUBJECT = 'certificate subject', EXPIRY_DATE = '20291031';
go

USE <databasetoencrypt>;
GO

CREATE DATABASE ENCRYPTION KEY
WITH ALGORITHM = AES_256
ENCRYPTION BY SERVER CERTIFICATE <certname>;
GO
Run Code Online (Sandbox Code Playgroud)

尝试执行CREATE DATABASE ENCRYPTION KEY命令时,我收到此消息,但不知道该怎么做:

无法使用证书“名称”,因为其私钥不存在或不受数据库主密钥的保护。SQL Server 需要能够自动访问用于此操作的证书的私钥。

当我ENCRYPTION BY PASSWORD = '<UseStrongPasswordHere>'CREATE CERTIFICATE命令中省略期间时,它会起作用。但是,我需要创建一个受密码保护的证书。

你有什么主意吗?!谢谢你。

sql-server sql-server-2008-r2 transparent-data-encryption

3
推荐指数
1
解决办法
2905
查看次数

Microsoft SQL Server 2016 Service Pack 1 (SP1) 支持 TDE(透明数据加密)

Microsoft SQL Server 2016 Service Pack 1 是否也向标准版添加了对 TDE(透明数据加密)的支持?

根据数据库引擎中的新增功能 - SQL Server 2016大事:SQL Server 2016 Service Pack 1,看起来许多企业级功能也添加到 SQL Server 2016 标准版中。

但是,关于 TDE 没有明确的答案,我知道 TDE 一直是企业功能,但只是想在提出 SQL Server 2016 SP1 之前确定一下。

任何人都可以参考一份书面/文件证明标准版的 SP1 是否会有 TDE?

非常感谢!

sql-server transparent-data-encryption standard-edition sql-server-2016

3
推荐指数
1
解决办法
2842
查看次数

启用 TDE 时可以访问数据库吗?

我有一个关于大型数据库上的透明数据加密 (TDE) 的问题。当数据库启用 TDE 时,我可以继续访问它吗?具体来说,我可以对数据库执行 SELECT、INSERT 和 UPDATE 操作吗?

我了解 TDE 会加密静态数据,但我不确定这是否会影响加密过程发生时访问数据的能力。我非常感谢那些有 TDE 经验的人提供的任何见解或建议。

先感谢您!

sql-server transparent-data-encryption

3
推荐指数
1
解决办法
573
查看次数

并行性的 TDE 性能和成本阈值

是否有任何文档、测试数据或其他证据表明在数据库上启用 TDE 时并行成本阈值 (CTP) 设置可能会影响性能?在不深入研究所有细节的情况下,我们发现在数据库上启用 TDE 后,基准测试出现了一些显着的性能下降,我们正在寻找可能产生影响的任何设置。CTP 当前设置为默认值 5,我知道这并不理想,所以请抵制对我进行惩罚的冲动。

我们还将添加 CPU 并进一步测试,但如果我们可以通过更改 CTP 或其他设置获得更好的性能,那当然比添加 CPU 更好(由于硬件成本以及每个 CPU 的 SQL Server 许可) .

我正在推动更改 CTP 并再次测试,但我希望看看是否有人已经对其进行了测试,以便我们可以相应地优先考虑要测试的更改。

谢谢!

sql-server transparent-data-encryption sql-server-2014

2
推荐指数
1
解决办法
190
查看次数

在启用 TDE 的情况下压缩数据库备份是否安全?

我已经阅读了很长时间,当数据库启用了 TDE 时,压缩备份似乎并不安全。

是否有人在使用 tde 数据库的压缩备份还原期间遇到错误?

我从未经历过此类错误,但我真的很担心。

似乎问题出在 SQL SERVER 2016 上,因为我使用的是 2012,所以我看不到任何问题。

此外,即使使用MAXTRANSFERSIZE = 131072备份也不压缩。会是什么呢?我正在使用NO CHECKSUMWITH CHECKSUM两者的尺寸相同。

backup compression sql-server-2012 transparent-data-encryption

2
推荐指数
1
解决办法
483
查看次数

SQL Server 在什么情况下对 tempdb 进行加密?

何时使用透明数据加密对 tempdb 进行加密?什么配置等导致 tempdb 以这种方式加密?

sql-server encryption tempdb transparent-data-encryption

1
推荐指数
1
解决办法
1105
查看次数

我们可以使用 TDE 作为一种反注入技术吗?

TDE通过将文件恢复到另一台服务器来防止对数据的未授权访问,因为它需要原始加密证书和主密钥。

如果我使用 TDE 对我的数据库应用了表级加密,并通过正确的身份验证从我的 Windows 应用程序访问数据库。考虑到入侵者正在尝试某种注入技术,我的问题是他收到的是原始数据还是加密数据?或者我们可以使用TDE as an anti-injection technique吗?我的应用程序中的查询可能如下所示:

Dim myQuery="Select * from myTable where some_id='" & txtUserId.Text & "'
Run Code Online (Sandbox Code Playgroud)

这样他们就可以通过提供像sameValue' or 1=1 or '将提供整个数据的文本来注入 sql 。在这种情况下,他是得到加密数据还是实际数据

注意:我不在我的应用程序中使用此类查询,而是在整个应用程序中使用参数化查询和 sp。要求这只是为了澄清。

sql-server sql-injection encryption transparent-data-encryption

1
推荐指数
1
解决办法
535
查看次数

使用 SQL Server TDE - 加密 0%

我正在为 SQL Server 使用 TDE。查询证书:

select database_name = d.name,
dek.encryptor_type,
cert_name = c.name
from sys.dm_database_encryption_keys dek
left join sys.certificates c
on dek.encryptor_thumbprint = c.thumbprint
inner join sys.databases d
on dek.database_id = d.database_id;
Run Code Online (Sandbox Code Playgroud)

输出:

database     encryptor        cert_name
tempdb      ASYMMETRIC KEY    NULL
TDE_Test    CERTIFICATE       TestZert3
Run Code Online (Sandbox Code Playgroud)

查询加密状态:

select db_name(database_id), encryption_state,   
percent_complete, key_algorithm, key_length
from sys.dm_database_encryption_keys
Run Code Online (Sandbox Code Playgroud)

输出:

database  encrypt_state percent_complete key_algorithm
tempdb      3             0              AES 256 
TDE_Test    3             0               AES 256
Run Code Online (Sandbox Code Playgroud)

为什么complet_percent 为0?

sql-server transparent-data-encryption

1
推荐指数
1
解决办法
1225
查看次数

关于透明数据加密的澄清

这是我们第一次在至关重要的生产数据库上应用 TDE,我有以下问题。

当 TDE 正在进行时:

  1. 我们仍然可以使用连接字符串访问正在该数据库上运行的应用程序吗?
  2. 如果 TDE 在加密数据库时失败,是否会破坏 .mdf 文件?我将如何恢复数据库?
  3. .ldf 和 .mdf 是否仍然可以访问,我们可以读取和写入这些文件吗?
  4. TDE进行过程中哪些数据库操作会受到影响?
  5. TDE 会对磁盘使用产生影响吗?
  6. TDE对数据库备份有影响吗?如果启用 TDE,.bak、.trn 文件是否都会自动加密?
  7. 在应用TDE的过程中,我们需要重点关注哪些方面?是否需要停电?
  8. 对 SQL Server 服务包或累积更新会有影响吗?

相关平台是具有可用性组的 SQL Server 2014 SP2 GDR。

sql-server encryption availability-groups transparent-data-encryption sql-server-2014

1
推荐指数
1
解决办法
814
查看次数