笔记286 数据库的恢复权限 加密备份文件MEDIAPASSWORD和PASSWORD 2013-6-11

笔记286 数据库的恢复权限 加密备份文件MEDIAPASSWORD和PASSWORD 2013-6-11

 1 --数据库的恢复权限 加密备份文件MEDIAPASSWORD和PASSWORD 2013-6-11
 2 --http://msdn.microsoft.com/zh-cn/library/ms186865(v=SQL.90).aspx
 3 --restore权限默认授予sysadmin和dbcreator固定服务器角色成员以及该数据库的所有者(dbo)
 4 
 5 --此外,在备份数据库的时候,用户可以为媒体集、备份集或两者指定密码
 6 --在backup语句中,定义备份集密码和媒体密码为可选功能。使用密码可防止
 7 --利用SQLSERVER工具未经授权地执行还原操作和在媒体中添加备份集。如果指定了密码
 8 --则用户还必须提供媒体密码才能执行这些操作
 9 
10 --因此,尽管使用密码对防止利用SQLSERVER工具未经授权地访问媒体内容有帮助,但
11 --密码不能防止媒体内容被破坏。密码不能完全防止未经授权地访问媒体内容,原因在于
12 --备份集中的数据没有加密,理论上可以被专为此目的创建的程序所查看里面的内容。
13 --对于安全性至关重要的场合,防止未经授权的个人访问媒体非常重要
14 
15 
16 --从 SQL Server 2012 开始,PASSWORD 和 MEDIAPASSWORD 选项不可再用于创建备份; 但仍可以还原使用密码创建的备份。
17 -----------------------------------------------------------------------------------
18 
19 --PASSWORD = { password | @password_variable }
20 --为备份集设置密码。 PASSWORD 是一个字符串。 如果为备份集定义了密码,则必须提供此密码才能对该备份集执行任何的 SQL Server 还原操作。
21 --但是,备份集密码不能防止覆盖备份文件。 若要防止覆盖备份文件,请改用媒体集密码
22 --此密码提供的安全性较低。 它旨在防止授权用户或未授权用户使用 SQL Server 2005 工具进行不正确的还原,
23 -- 但是不能防止通过其他方式或通过替换密码来读取备份数据。 保护备份的最佳做法是将备份磁带存储在安全的位置,
24 --或者备份到由适当的访问控制列表 (ACL) 保护的磁盘文件。 ACL 应设置在创建备份的根目录下。
25 
26 
27 --MEDIAPASSWORD = { mediapassword | @mediapassword_variable }
28 --为媒体集设置密码。 MEDIAPASSWORD 是一个字符串。
29 --如果为媒体集定义了密码,则在该媒体集上创建备份集之前必须提供此密码。
30 --另外,从该媒体集执行任何还原操作时也必须提供媒体密码。 只有通过重新格式化才能覆盖受密码保护的媒体
31 --此密码提供的安全性较低。 它旨在防止授权用户或未授权用户使用 SQL Server 2005 工具进行不正确的还原,
32 --但是不能防止通过其他方式或通过替换密码来读取备份数据。 保护备份的最佳做法是将备份磁带存储在安全的位置,
33 --或者备份到由适当的访问控制列表 (ACL) 保护的磁盘文件。 ACL 应设置在创建备份的根目录下。
34 
35 
36 --BACKUP 使用由 PASSWORD 选项提供的备份集密码创建备份集。
37 --另外,通常 BACKUP 在写入媒体之前将验证由 MEDIAPASSWORD 选项提供的媒体密码。
38 -- BACKUP 不验证媒体密码的唯一情况是格式化媒体时,这将覆盖媒体标头。
39 --如果 BACKUP 写入媒体标头,BACKUP 将给 MEDIAPASSWORD 选项中指定的值分配媒体集密码。
40 ---------------------------------------------------------------------------
41 --三种情况
42 --(1)只有mediapassword
43 --(2)只有PASSWORD
44 --(3)有PASSWORD和mediapassword
45 --------------------------------------------------------------------------
46 --情况一
47 USE master
48 GO
49 
50 Backup DATABASE [pratice]
51 To disk='D:\pratice_fullbackup_201306110152.bak' WITH mediapassword='123456'
52 GO
53 
54 --还原
55 RESTORE DATABASE [pratice] FROM DISK='D:\pratice_fullbackup_201306110152.bak' WITH MEDIAPASSWORD='123456',REPLACE
56 -----------------------------------------------------------------------------
57 --情况二
58 USE master
59 GO
60 
61 Backup DATABASE [hengshan]
62 To disk='D:\hengshan_fullbackup_201306110152.bak' WITH password='123456'
63 GO
64 
65 --还原
66 RESTORE DATABASE [hengshan] FROM DISK='D:\hengshan_fullbackup_201306110152.bak' WITH password='123456', REPLACE
67 
68 ---------------------------------------------------------------------------
69 --情况三
70 USE master
71 GO
72 
73 Backup DATABASE GPOSDB
74 To disk='D:\GPOSDB_fullbackup_2013061110152.bak' WITH mediapassword='123456' ,PASSWORD='123456'
75 GO
76 
77 --还原
78 RESTORE DATABASE [GPOSDB] FROM DISK='J:\GPOSDB_fullbackup_2013076110152.bak' WITH PASSWORD='123456',MEDIAPASSWORD='123456',REPLACE
79 
80 
81 ----------------------------------------------------------------
82 --查看哪些备份集加了密码
83 USE [msdb]
84 GO
85 SELECT * FROM [dbo].[backupmediaset]

 

posted @ 2013-08-04 20:57 桦仔 阅读(...) 评论(...)  编辑 收藏