SQL Server 加密

加密是指通过使用密钥或密码对数据进行模糊处理的过程。 这会使数据变得毫无用处,除非使用对应的解密密钥或密码。 加密并不解决访问控制问题。 不过,它可以通过限制数据丢失来增强安全性,即使在访问控制失效的情况下。 例如,如果数据库主机配置有误且黑客获取了敏感数据,则如果数据已加密,那么被盗信息可能会毫无用处。

可以在 SQL Server 中对连接、数据和存储过程使用加密。 下表包含有关 SQL Server中的加密的详细信息。

重要

虽然加密是可帮助确保安全性的有力工具,但它并不适用于所有数据或连接。 在决定是否实现加密时,请考虑用户访问数据的方式。 如果用户通过公共网络访问数据,则可能需要使用数据加密以增强安全性。 但是,如果所有访问都具有某项安全 Intranet 配置,则可能不需要使用加密。 任何时候使用加密时还应包括密码、密钥和证书的维护策略。

本节内容

加密层次结构
有关 SQL Server 中的加密层次结构的信息。

选择加密算法
说明如何选择有效的加密算法。

透明数据加密 (TDE)
提供有关如何以透明方式来加密数据的一般信息。

SQL Server 和数据库加密密钥(数据库引擎)
在 SQL Server 中,加密密钥包括用于保护敏感数据的公共密钥、私钥和对称密钥的组合。 该部分介绍如何实现和管理加密密钥。

保护 SQL Server
概述如何帮助保护SQL Server平台,以及如何使用用户和安全对象。

加密函数 (Transact-SQL)
说明如何实现加密函数。

ENCRYPTBYPASSPHRASE (Transact-SQL)
说明如何使用密码来加密数据。

ENCRYPTBYKEY (Transact-SQL)
说明如何使用对称密钥来加密数据。

ENCRYPTBYASYMKEY (Transact-SQL)
说明如何使用非对称密钥来加密数据。

ENCRYPTBYCERT (Transact-SQL)
说明如何使用证书来加密数据。

外部资源

SQL Server 2005 安全性的 10 个步骤
有关SQL Server安全性的最新信息。

另请参阅

sys.key_encryptions (Transact-SQL)
SQL Server 和数据库加密密钥(数据库引擎)
备份和还原 Reporting Services 加密密钥