数据库加密&证书创建

本文详细介绍了如何使用 SQL Server 给数据库进行加密,包括创建密钥、证书和数据库加密钥匙的过程,以及如何将证书还原到另一台服务器以还原加密。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

以下是用sqlserver给数据库进行加密的脚本,其中当然也包含了证书创建的步骤:

USE master;
GO   
--drop master key
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '123456';  
GO

BACKUP MASTER KEY TO FILE = 'D:\SQL1_master.key' ENCRYPTION BY   
PASSWORD = '123456';  
GO    
CREATE CERTIFICATE TDECert WITH SUBJECT = 'TDE Certificate';  
GO

BACKUP CERTIFICATE TDECert TO FILE = 'D:\SQL1_master.cer'   
WITH PRIVATE KEY (   
FILE  = 'D:\SQL1_TDECert.pvk',   
ENCRYPTION BY PASSWORD = '123456'   
    );  

USE TEST;   
GO   
CREATE DATABASE ENCRYPTION KEY   
WITH ALGORITHM = AES_128   
ENCRYPTION BY SERVER CERTIFICATE TDECert;

GO
ALTER DATABASE TEST SET ENCRYPTION ON


--如果需要还原加密后的数据库文件到另外一台服务器,需要首先还原证书到目标服务器:
--目标服务器的master key 可以跟原服务器的不一样
USE master;   
CREATE CERTIFICATE TDECert FROM FILE = 'D:\SQL1_master.cer'   
      WITH PRIVATE KEY (   
        FILE  = 'D:\SQL1_TDECert.pvk',   
        DECRYPTION BY PASSWORD = '123456'   
    );  

转载于:https://www.cnblogs.com/shihuai355/p/3967686.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值