[英]Cannot create SQL Encryption Key
我正在嘗試為我們的新財務數據庫加密備份。 這是一個全新的數據庫,所以以前沒有任何設置。 我在Microsoft SQL Server 2014中工作。
一直試圖關注MSDN,但它沒有幫助,頁面只是相互鏈接,最終在一個自我參考圈。 痛苦!
所以,這是我到目前為止所做的。
sp_configure 'show advanced', 1
sp_configure 'EKM provider enabled', 1
創建了證書
CREATE CERTIFICATE fooBackup ENCRYPTION BY PASSWORD = '#########' WITH SUBJECT = '### Server Backup Key', EXPIRY_DATE = '20201031'; GO
SELECT * FROM sys.certificates
(它確實存在!) 試圖創建加密密鑰
CREATE DATABASE ENCRYPTION KEY WITH ALGORITHM = AES_256 ENCRYPTION BY SERVER CERTIFICATE fooBackup; GO
這就是我陷入困境的地方。 我收到以下錯誤:
Msg 15151,Level 16,State 1,Line 10
找不到證書'fooBackup',因為它不存在或您沒有權限。
我已經嘗試在對稱和非對稱密鑰上授予ALTER和CONTROL權限,如http://bit.ly/1OcbYyt所示,正如我所說,我以SA身份登錄。 我可以看到它存在。 我只是......迷路了。
任何通過SQL掙扎的人的幫助都將不勝感激!
我最終通過使用主密鑰而不是自己的密碼創建證書來實現此目的。
這個步驟是:
USE master;
GO
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '5tr0ngP@ssW0rd'
GO
OPEN MASTER KEY DECRYPTION BY PASSWORD = '5tr0ngP@ssW0rd'
CREATE CERTIFICATE MyDBcert
WITH SUBJECT = 'The Cert For MyDB';
GO
USE MyDB;
GO
CREATE DATABASE ENCRYPTION KEY
WITH ALGORITHM = AES_256
ENCRYPTION BY SERVER CERTIFICATE MyDBcert;
GO
完成此操作后,您可以自由使用證書加密數據庫備份。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.