TDE--相关Demo
SQL Server 2008引入透明数据加密(Transparent Data Encryption),
它允许你完全无需修改应用程序代码而对整个数据库加密。当一个用户数据库可
用且已启用TDE时,在写入到磁盘时在页级实现加密。在数据页读入内存时解密
。如果数据库文件或数据库备份被盗,没有用来加密的原始证书将无法访问。
TDE Demo:
--在还原数据库之前必须还原证书,否则数据无法被还原
--错误提示:找不到指纹为'XXX' 的服务器证书。
use master;
GO
--还原证书DB_TDE_cert
CREATE CERTIFICATE DB_TDE_cert
FROM FILE = 'E:\DB_TDE_cert.cer'
WITH PRIVATE KEY (FILE = 'E:\DB_TDE_cert.pvk',
DECRYPTION BY PASSWORD = 'Tde@sql123')
GO
--还原数据库
RESTORE DATABASE [TestDB] FILE = N'TestDB'
FROM DISK = N'E:\TestDB.BAK' WITH FILE = 1,
MOVE N'TestDB' TO N'E:\DB\\TestDB.mdf',
MOVE N'TestDB_log' TO N'E:\DB\\TestDB_0.LDF',
NOUNLOAD, STATS = 10
GO
还原被TDE加密的数据库备份
use master
GO
SELECT name,is_master_key_encrypted_by_server FROM sys.databases; --查看master数据库下的密钥信息
SELECT * FROM sys.symmetric_keys; --创建证书用来保护数据库加密密钥(DEK)
CREATE CERTIFICATE DB_TDE_cert
WITH SUBJECT = N'DB_TDE_cert'; --备份证书
BACKUP CERTIFICATE DB_TDE_cert
TO FILE = 'D:\DB_TDE_cert.cer'
WITH PRIVATE KEY (
FILE = 'D:\DB_TDE_cert.pvk' ,
ENCRYPTION BY PASSWORD = 'Tde@sql123' ); ---创建测试DB
IF(DB_ID('TestDB') IS NOT NULL)
BEGIN
DROP DATABASE TestDB
END
GO
CREATE DATABASE TestDB
GO USE TestDB;
GO
--创建由master_server_cert保护的DEK 数据库加密密钥(对称密钥)
CREATE DATABASE ENCRYPTION KEY
WITH ALGORITHM = AES_128
ENCRYPTION BY SERVER CERTIFICATE DB_TDE_cert;
GO
--将数据库改成单用户模式
use master
GO
ALTER DATABASE TestDB SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
GO
--开始数据加密
ALTER DATABASE TestDB SET ENCRYPTION ON;
GO
--将数据库设置为多用户模式
ALTER DATABASE TestDB SET MULTI_USER WITH ROLLBACK IMMEDIATE;
GO --查看数据库加密模式
SELECT DB_NAME(database_id),encryption_state
FROM sys.dm_database_encryption_keys;
管理删除TDE
USE TestDB
GO
--修改加密算法
ALTER DATABASE ENCRYPTION KEY REGENERATE WITH ALGORITHM = AES_128
Go
USE master
GO
--创建新的证书
CREATE CERTIFICATE TDE_Server_Certificate_V2
WITH SUBJECT = 'Server-level cert for TDE V2'
GO
USE TestDB
GO
--用新证书修改DEK
ALTER DATABASE ENCRYPTION KEY
ENCRYPTION BY SERVER CERTIFICATE TDE_Server_Certificate_V2 --移除数据库透明加密
ALTER DATABASE DB_Encrypt_Demo SET ENCRYPTION OFF
GO
--移除TDE后,可以删除DEK
USE TestDB
GO
Drop DATABASE ENCRYPTION KEY
GO
TDE--相关Demo的更多相关文章
- IO相关Demo
这几天复习了IO相关知识 只为记录,好记性不如烂笔头 有误请指正 ありがとうございます. 我的公众号 作者:晨钟暮鼓c个人微信公众号:程序猿的月光宝盒 1.判断存在,存在改名,并延迟删除,不存在新建 ...
- java操作HDFS相关demo(TDH,kerberos认证)
public class Test { private static Configuration conf; private static FileSystem fs; //开 ...
- 腾讯云>>云通信>>TLS后台API在mac上JAVA DEMO搭建
1.相关文档地址 2.相关demo代码 代码部分作了修改,使用了commons-io中的IOUtils.toString简化了io操作 public class Demo { public stati ...
- 微信小程序--图片相关问题合辑
图片上传相关文章 微信小程序多张图片上传功能 微信小程序开发(二)图片上传 微信小程序上传一或多张图片 微信小程序实现选择图片九宫格带预览 ETL:微信小程序之图片上传 微信小程序wx.preview ...
- iOS 神秘而又强大的传感器系统 (附demo)
iOS中的各种传感器: 随着科技的发展,机器感知人的行为!Goole的无人驾驶汽车到李彦宏的无人驾汽车,都带入了各种计算及传感. 为了研究自然现象和制造劳动工具,人类必须了解外界的各类信息.了解外界信 ...
- Android开发之深入理解Android 7.0系统权限更改相关文档
http://www.cnblogs.com/dazhao/p/6547811.html 摘要: Android 6.0之后的版本增加了运行时权限,应用程序在执行每个需要系统权限的功能时,需要添加权限 ...
- WebAssembly相关
git搜索:https://github.com/search?q=WebAssembly 相关demo:https://github.com/jpmorganchase/perspective we ...
- 机器视觉-EasyDL商品检测-标准版-Demo
机器视觉-EasyDL商品检测-标准版 功能: EasyDL是百度大脑中的一个定制化训练和服务平台,EasyDL零售版是EasyDL针对零售场景推出的行业版,定制商品检测服务是EasyDL零售版的一项 ...
- 阿里云直播 C# SDK 如何使用
阿里云直播SDK的坑 1.直播云没有单独的SDK,直播部分被封装在CDN的相关SDK当中. 2.针对SDK,没有相关Demo. 3.针对SDK,没有相关的文档说明. 4.针对SDK的说明,官网上的说明 ...
- 使用 .NET WinForm 开发所见即所得的 IDE 开发环境,实现不写代码直接生成应用程序
直接切入正题,这是我09年到11年左右业余时间编写的项目,最初的想法很简单,做一个能拖拖拽拽就直接生成应用程序的工具,不用写代码,把能想到的业务操作全部封装起来,通过配置的方式把这些业务操作组织起来运 ...
随机推荐
- 第六章 Validating with the Validation API
CHAPTER 6 Validating with the Validation API Defining and Triggering Validation: An Overview 你可以使用以下 ...
- error C2039: 'SetDefaultDllDirectories'错误解决办法<转>
使用VS2013+WDK8.1+Win7开发UMDF驱动,当使用了CComPtr类,包含了atlcomcli.h头文件却报错,错误如下: Error 3 error C2039: 'SetDefaul ...
- umbraco
在任意页面获取根节点 var locale = CurrentPage.Site(); 遍历根节点 @foreach (var module in CurrentPage.Site().Childre ...
- Python实现七牛云视频播放
这篇文章是使用Python的Web框架Django Rest Framework来提供视频相关的api接口,主要功能包括视频上传.视频转码.视频访问授权.删除视频文件.视频截图功能. 七牛云上的基本概 ...
- js原型和原型链[转]
附上原文出处:http://hzjavaeyer.group.iteye.com/group/wiki/3086-JavaScript-core-concepts 一.概念: 原型对象:JavaScr ...
- 图解Git
转载自http://marklodato.github.io/visual-git-guide/index-zh-cn.html#diff 图解Git 其他语言: Deutsch English Es ...
- adf笔记
1>jsf页面js调试,手动添加debugger调试 方案:在页面中添加debugger,然后打开“开发者工具”(必须打开),直接运行页面自动跳转到debugger处. 2>jdevelo ...
- c/c++笔试面试试题
C 试题(纯属转载) 1.求下面函数的返回值(微软) int func(x) { int countx = 0; while(x) { countx ++; ...
- c++ static笔记
[转]http://www.cnblogs.com/zi-xing/p/4590282.html static的作用 在函数体,一个被声明为static的变量,在这一函数被调用的过程里,其数值维持不变 ...
- Spring思维导图(AOP篇)
什么是aop AOP(Aspect-OrientedProgramming,面向方面编程),可以说是OOP(Object-Oriented Programing,面向对象编程)的补充和完善.OOP允许 ...