SQL证书加密

--创建证书
CREATE CERTIFICATE cert_TTS --证书名称
ENCRYPTION BY PASSWORD ='sihuiTTS0001'--加密证书的密码
WITH SUBJECT ='DB_Encrypt_TTS Database Encryption Certificate',--证书主题
START_DATE ='3/14/2013', EXPIRY_DATE ='10/20/2015'--起止日期
GO
--备份
BACKUP CERTIFICATE cert_TTS
TO FILE='D:\certTTS.BAK' --证书备份路径,用来加密
WITH PRIVATE KEY (FILE='D:\certTTSPK.BAK', --证书私钥文件路径,用来解密
ENCRYPTION BY PASSWORD ='sihuiTTS0001', --加密私钥密码
DECRYPTION BY PASSWORD ='sihuiTTS0001' ) --解密私钥密码

--备份后,可以在其他数据库中使用这个证书,或使用DROP CERTIFICATE命令删除它。
DROP CERTIFICATE cert_TTS
GO
--从备份文件中还原证书到数据库中
CREATE CERTIFICATE cert_TTS
FROMFILE='H:\SqlBackup\certDemo.BAK'
WITH PRIVATE KEY (FILE='H:\SqlBackup\certDemoPK.BAK',
DECRYPTION BY PASSWORD ='sihuiTTS0001' ,--解密私钥密码
ENCRYPTION BY PASSWORD ='sihuiTTS0001')--加密私钥密码


--从证书中删除私钥 
ALTER CERTIFICATE cert_TTS 
REMOVE PRIVATE KEY 

--从备份文件为既有证书重新增加私钥 
ALTER CERTIFICATE cert_TTS 
WITH PRIVATE KEY 
(FILE='H:\SqlBackup\certDemoPK.BAK', 
DECRYPTION BY PASSWORD ='sihuiTTS0001' ,--解密私钥密码 
ENCRYPTION BY PASSWORD ='sihuiTTS0001')--加密私钥密码 

--修改既有私钥的密码 
ALTER CERTIFICATE cert_Demo 
WITH PRIVATE KEY (DECRYPTION BY PASSWORD ='sihuiTTS0001', 
ENCRYPTION BY PASSWORD ='mynewpassword!!!13E')


select cast ( DecryptByCert( Cert_ID('cert_TTS') ,cityname ,N'sihuiTTS0001') as varchar(200)) from city

 

 

转载于:https://www.cnblogs.com/Fashion/p/3257359.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值