本文件已封存並已停止維護。
ALTER SYMMETRIC KEY (Transact-SQL)
SQL Server 2005
變更對稱金鑰的屬性。
ALTER SYMMETRIC KEY Key_name <alter_option> <alter_option> ::= ADD ENCRYPTION BY <encrypting_mechanism> [ , ... n ] | DROP ENCRYPTION BY <encrypting_mechanism> [ , ... n ] <encrypting_mechanism> ::= CERTIFICATE certificate_name | PASSWORD = 'password' | SYMMETRIC KEY Symmetric_Key_Name | ASYMMETRIC KEY Asym_Key_Name
- Key_name
-
這是所要變更之對稱金鑰在資料庫中的識別名稱。
- ADD ENCRYPTION BY
-
利用指定的方法新增加密。
- DROP ENCRYPTION BY
-
利用指定的方法卸除加密。您無法從對稱金鑰移除所有加密。
- CERTIFICATE Certificate_name
-
指定用來加密對稱金鑰的憑證。這個憑證必須已存在於資料庫中。
- PASSWORD = 'password'
-
指定用來加密對稱金鑰的密碼。
- SYMMETRIC KEY Symmetric_Key_Name
-
指定用來加密所要變更之對稱金鑰的對稱金鑰。這個對稱金鑰必須已存在於資料庫中,且必須是開啟的。
- ASYMMETRIC KEY Asym_Key_Name
-
指定用來加密所要變更之對稱金鑰的非對稱金鑰。這個非對稱金鑰必須已存在於資料庫中。
注意: |
|---|
| 如果是利用密碼 (而不是利用資料庫主要金鑰的公開金鑰) 來加密對稱金鑰,則會使用 TRIPLE_DES 加密演算法。因此,利用強式加密演算法 (如 AES) 建立的金鑰,其本身的安全是由較弱的演算法來維護的。 |
若要變更對稱金鑰的加密,請使用 ADD ENCRYPTION 和 DROP ENCRYPTION 片語。金鑰不可能完全不加密。因此,最佳作法是先加入新的加密格式,再移除舊的加密格式。
若要變更對稱金鑰的擁有者,請使用 ALTER AUTHORIZATION。
下列範例會變更用來保護對稱金鑰的加密方法。當建立對稱金鑰 JanainaKey043 時,是利用憑證 Shipping04 來加密該金鑰的。因為永遠不能將該金鑰儲存為未加密,所以在這個範例中,由密碼新增加密,然後由憑證移除加密。
CREATE SYMMETRIC KEY JanainaKey043 WITH ALGORITHM = AES_256
ENCRYPTION BY CERTIFICATE Shipping04;
-- Open the key.
OPEN SYMMETRIC KEY JanainaKey043 DECRYPTION BY CERTIFICATE Shipping04
WITH PASSWORD = 'pGFD4bb925DGvbd2439587y';
-- First, encrypt the key with a password.
ALTER SYMMETRIC KEY JanainaKey043
ADD ENCRYPTION BY PASSWORD = '4350$98fdlxk4Bj9oFD9h4';
-- Now remove encryption by the certificate.
ALTER SYMMETRIC KEY JanainaKey043
DROP ENCRYPTION BY CERTIFICATE Shipping04;
CLOSE SYMMETRIC KEY JanainaKey043;
顯示:

