sql server 怎么设置表中加密

 时间:2024-10-12 14:14:50

1、测试环境说明测试使用SQL Servre 2012 R2,创建如下的数据表:--创建测试用的用户表CREATE TABLE TBLUser( Name nvarchar(30), Password varbinary(1000), )GO

sql server 怎么设置表中加密

2、创建数据库主密钥数据库主密钥(Database Master Key)在服务主密钥之下,由服务主密钥进行加密。这是一个数据库级别的密钥,可以用于为创建数据库级别的证书或非对称密钥提供加密。每一个数据库只能有一个数据库主密钥,通过T-SQL语句创建。具体代码如下:--创建数据库主密钥CREATE MASTER KEY ENCRYPTION BY PASSWORD ='passW@ord'GO

sql server 怎么设置表中加密

3、创建证书创建一个用来加密对称秘钥证书,具体代码如下:--创建证书CREATE CERTIFICATE TestCert with SUBJECT = 'Test Certificate'GO

sql server 怎么设置表中加密

4、创建一个对称秘钥由SQL Server加密层次结构可以看出,对称密钥可以通过密码创建,也可以通过其它对称密钥、非对称密钥和证书创建。本文以证书创建一个测试用的对称秘钥,具体代码如下:--创建对称密钥CREATE SYMMETRIC KEY TestSymmetric WITH ALGORITHM = AES_256 ENCRYPTION BY CERTIFICATE TestCertGO

sql server 怎么设置表中加密

5、加密数据先打开证对称秘钥,再使用ENCRYPTBYKEY函数加密数倌栗受绽据,完成后关闭对称秘钥。具体代码如下:--使用对称秘钥加密数赍铈于脏据OPEN SYMMETRIC KEY TestSymmetric DECRYPTION BY CERTIFICATE TestCert;INSERT INTO TBLUser values('张三', ENCRYPTBYKEY(Key_Guid(N'TestSymmetric'), '123456'));CLOSE SYMMETRIC KEY TestSymmetric;GO

sql server 怎么设置表中加密

6、查看加密后的数据直接下SQL查询加密后的数据,可以看到password的内容是一串不可以阅读的16进制的字符。--查看加密后的数据SELECT * FROM TBLUserGO

sql server 怎么设置表中加密

7、解密数据先打开证对称秘钥,再使用Decr鲻戟缒男yptByKey函数解密数据,完成后关闭对称秘钥。具体代码如下:--解密数据OPEN SYMMETRIC K呶蓟鹭毵EY TestSymmetric DECRYPTION BY CERTIFICATE TestCert;SELECT Name, CAST(DecryptByKey(password) as varchar(100)) Password FROM TBLUser;CLOSE SYMMETRIC KEY TestSymmetric;GO

sql server 怎么设置表中加密
  • SQL Server 2016怎么用
  • VMware虚拟机如何设置窗口自动适应客户机?
  • hyper-v管理器中关闭虚拟机状态出现 正在停止
  • 如何在命令行上编译 C++/CX 程序
  • ubuntu搜狗无法输入中文
  • 热门搜索
    节约水资源手抄报 关于童话故事的手抄报 欢度国庆手抄报内容 莲文化手抄报 关于三爱三节的手抄报 写规范字手抄报内容 关于法制的手抄报资料 关于地理的手抄报 关于自信的手抄报 数学好玩手抄报