WEB开发网
开发学院数据库MSSQL Server 详述SQL Server 2005对称密钥加密技术 阅读

详述SQL Server 2005对称密钥加密技术

 2007-10-30 09:49:19 来源:WEB开发网   
核心提示: 象服务主密钥一样,你可以备份和恢复数据库主密钥,详述SQL Server 2005对称密钥加密技术(3),使用BACKUP MASTER KEY备份数据库主密钥,语法类似于备份服务主密钥:BACKUP MASTER KEY TO FILE = 'path_to_file'E

象服务主密钥一样,你可以备份和恢复数据库主密钥。使用BACKUP MASTER KEY备份数据库主密钥。语法类似于备份服务主密钥:

BACKUP MASTER KEY TO FILE = 'path_to_file'

ENCRYPTION BY PASSWORD = 'password'

恢复数据库主密钥使用RESTORE MASTER KEY语句,它需要使用DECRYPTION BY PASSWORD子句提供备份时指定的加密密码,还要使用ENCRYPTION BY PASSWORD子句,SQL Server使用它提供的密码来加密数据库主密钥之后保存在数据库中。

RESTORE MASTER KEY FROM FILE = 'path_to_file'
  DECRYPTION BY PASSWORD = 'password'
  ENCRYPTION BY PASSWORD = 'password'
  [ FORCE ]

同样,FORCE表示你将忽略在解密过程中的错误。

建议你在创建了数据库主密钥之后立即备份数据库主密钥,并把它保存到一个安全的地方。同样,使用FORCE语句可能导致已加密数据的丢失。

要删除数据库主密钥,使用DROP MASTER KEY语句,它删除当前数据库的主密钥。在执行之前,确定你在正确的数据库上下文中。

1.3 自动密钥管理

当创建数据库主密钥时,它被使用提供的密码加密然后被保存到当前数据库中。同时,它被使用服务主密钥加密并保存到master数据库中。这份保存的数据库主密钥允许服务器在需要的时候解密数据库主密钥,这就是自动密钥管理。没有自动密钥管理的话,你必须在每次使用证书或密钥加密或解密数据(它需要使用数据库主密钥)时使用OPEN MASTER KEY语句同时提供加密的密码。使用自动密钥管理,你不需要执行OPEN MASTER KEY语句,也不需要提供密码。

自动密钥管理的缺点就是每个sysadmin角色的成员都能够解密数据库主密钥。你可以通过ALTER MASTER KEY语句的DROP ENCRYPTION BY SERVICE MASTER KEY子句,从而不使用自动密钥管理。ALTER MASTER KEY的使用方法参见联机丛书。

上一页  1 2 3 4 5 6 7 8  下一页

Tags:详述 SQL Server

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接