共用方式為


ALTER ASYMMETRIC KEY (Transact-SQL)

更新: 2006 年 12 月 12 日

變更非對稱金鑰的屬性。

主題連結圖示Transact-SQL 語法慣例

語法

ALTER ASYMMETRIC KEY Asym_Key_Name <alter_option>

<alter_option> ::=
    <password_change_option>
    | 
    REMOVE PRIVATE KEY

<password_change_option> ::=
    WITH PRIVATE KEY ( <password_option> [ , <password_option> ] )

<password_option> ::=
    ENCRYPTION BY PASSWORD = 'password'
    |
    DECRYPTION BY PASSWORD = 'old_password'

引數

  • Asym_Key_Name
    這是非對稱金鑰在資料庫中的識別名稱。
  • REMOVE PRIVATE KEY
    從非對稱金鑰移除私密金鑰。不移除公開金鑰。
  • WITH PRIVATE KEY
    變更私密金鑰的保護。
  • ENCRYPTION BY PASSWORD ='password'
    指定用來保護私密金鑰的新密碼。將檢查密碼複雜性。如果省略這個選項,則由資料庫主要金鑰加密私密金鑰。
  • DECRYPTION BY PASSWORD ='password'
    指定目前用來保護私密金鑰的舊密碼。如果是利用資料庫主要金鑰加密私密金鑰,則不需要這個選項。

備註

如果沒有資料庫主要金鑰,則需要 ENCRYPTION BY PASSWORD 選項,而且如果沒有提供密碼,作業會失敗。如需有關如何建立資料庫主要金鑰的資訊,請參閱<CREATE MASTER KEY (Transact-SQL)>。

您可以利用 ALTER ASYMMETRIC KEY 指定 PRIVATE KEY 選項 (如下表所示) 來變更私密金鑰的保護。

變更保護 ENCRYPTION BY PASSWORD DECRYPTION BY PASSWORD

從舊密碼到新密碼

必要

必要

從密碼到主要金鑰

省略

必要

從主要金鑰到密碼

必要

省略

必須先開啟資料庫主要金鑰,才可以利用它來保護私密金鑰。如需詳細資訊,請參閱<OPEN MASTER KEY (Transact-SQL)>。

若要變更非對稱金鑰的擁有權,請使用 ALTER AUTHORIZATION

權限

若要移除私密金鑰,則需要非對稱金鑰的 CONTROL 權限。

範例

A. 變更私密金鑰的密碼

下列範例會變更用來保護非對稱金鑰 PacificSales09 之私密金鑰的密碼。新密碼會是 85423sdvcx7987$$2ooo

ALTER ASYMMETRIC KEY PacificSales09 
    WITH PRIVATE KEY (
    DECRYPTION BY PASSWORD = 'bmsA$dk7i82bv55foajsd9764',
    ENCRYPTION BY PASSWORD = '85423sdvcx7987$$2ooo');
GO

B. 從非對稱金鑰移除私密金鑰

下列範例會從 PacificSales19 移除私密金鑰,只留下公開金鑰。

ALTER ASYMMETRIC KEY PacificSales19 REMOVE PRIVATE KEY;
GO

C. 移除私密金鑰的密碼保護

下列範例會從私密金鑰移除密碼保護,並利用資料庫主要金鑰保護私密金鑰。

OPEN MASTER KEY;
ALTER ASYMMETRIC KEY PacificSales09 WITH PRIVATE KEY (
    DECRYPTION BY PASSWORD = 'bmsA$dk7i82bv55foajsd9764' );
GO

請參閱

參考

CREATE ASYMMETRIC KEY (Transact-SQL)
DROP ASYMMETRIC KEY (Transact-SQL)
CREATE MASTER KEY (Transact-SQL)
OPEN MASTER KEY (Transact-SQL)

其他資源

加密階層

說明及資訊

取得 SQL Server 2005 協助