2013-10-15 82 views
-1

我想要做列級加密。例如:列級加密備份

--Create Master Key 
USE EncryptTest 
GO 
CREATE MASTER KEY ENCRYPTION 
BY PASSWORD = 'Test' 
GO 

--Create Server Cert 
USE EncryptTest 
GO 
CREATE CERTIFICATE EncryptTestCert 
WITH SUBJECT = 'Test' 
GO 

/* Create Symmetric Key */ 
USE EncryptTest 
GO 
CREATE SYMMETRIC KEY TestTableKey 
WITH ALGORITHM = TRIPLE_DES ENCRYPTION 
BY CERTIFICATE EncryptTestCert 
GO 
/* Encrypt the Column.*/ 
USE EncryptTest 
GO 
OPEN SYMMETRIC KEY TestTableKey DECRYPTION 
BY CERTIFICATE EncryptTestCert 
UPDATE TestTable 
SET EncryptSecondCol = ENCRYPTBYKEY(KEY_GUID('TestTableKey'),SecondCol) 
GO 

--View encrypted 
USE EncryptTest 
GO 
SELECT * 
FROM TestTable 
GO 

但是我的問題是如何備份證書或密鑰?該場景是DBA(當然不是我)意外刪除了證書/密鑰,使數據庫安全,但沒用。我提出這個問題是因爲我看到更多的實際問題出現在有人用胖手指漏掉安全性,然後實際存在安全漏洞的情況下。

+0

的downvote是正確的 - 我應該做更多這方面的研究,然後再發布:只要我做了,我發現下面的鏈接。 –

回答