Condividi tramite


ALTER ASYMMETRIC KEY (Transact-SQL)

Modifica le proprietà di una chiave asimmetrica.

Icona di collegamento a un argomento Convenzioni della sintassi Transact-SQL

Sintassi

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 = 'strongPassword'
    |
    DECRYPTION BY PASSWORD = 'oldPassword'

Argomenti

  • Asym_Key_Name
    Nome con il quale è nota la chiave asimmetrica all'interno del database.

  • REMOVE PRIVATE KEY
    Rimuove la chiave privata dalla chiave asimmetrica. La chiave pubblica non viene rimossa.

  • WITH PRIVATE KEY
    Modifica la protezione della chiave privata.

  • ENCRYPTION BY PASSWORD ='stongPassword'
    Specifica una nuova password per proteggere la chiave privata. password deve soddisfare i criteri password Windows del computer che sta eseguendo l'istanza di SQL Server. Se questa opzione viene omessa, la chiave privata verrà crittografata con la chiave master del database.

  • DECRYPTION BY PASSWORD ='oldPassword'
    Specifica la vecchia password, attualmente utilizzata per proteggere la chiave privata. Questo parametro non è richiesto se la chiave privata è crittografata con la chiave master del database.

Osservazioni

Se non è presente una chiave master del database, l'opzione ENCRYPTION BY PASSWORD è obbligatoria e l'operazione avrà esito negativo se non si specifica una password. Per informazioni sulla creazione di una chiave master del database, vedere CREATE MASTER KEY (Transact-SQL).

È possibile utilizzare ALTER ASYMMETRIC KEY per modificare la protezione della chiave privata specificando le opzioni PRIVATE KEY come illustrato nella tabella seguente.

Modifica della protezione

ENCRYPTION BY PASSWORD

DECRYPTION BY PASSWORD

Sostituzione della vecchia password con una nuova password

Obbligatoria

Obbligatoria

Sostituzione della password con la chiave master

Omettere

Obbligatoria

Sostituzione della chiave master con una password

Obbligatoria

Omettere

È necessario aprire la chiave master del database prima di poterla utilizzare per proteggere una chiave privata. Per ulteriori informazioni, vedere OPEN MASTER KEY (Transact-SQL).

Per modificare il proprietario di una chiave asimmetrica, utilizzare ALTER AUTHORIZATION.

Autorizzazioni

È richiesta l'autorizzazione CONTROL per la chiave asimmetrica se si rimuove la chiave privata.

Esempi

A.Modifica della password della chiave privata

Nell'esempio seguente viene modificata la password utilizzata per proteggere la chiave privata della chiave asimmetrica PacificSales09. Verrà impostata la nuova password <enterStrongPasswordHere>.

ALTER ASYMMETRIC KEY PacificSales09 
    WITH PRIVATE KEY (
    DECRYPTION BY PASSWORD = '<oldPassword>',
    ENCRYPTION BY PASSWORD = '<enterStrongPasswordHere>');
GO

B.Rimozione della chiave privata da una chiave asimmetrica

Nell'esempio seguente viene rimossa la chiave privata da PacificSales19, lasciando solo la chiave pubblica.

ALTER ASYMMETRIC KEY PacificSales19 REMOVE PRIVATE KEY;
GO

C.Rimozione della protezione con password da una chiave privata

Nell'esempio seguente viene rimossa la protezione con password da una chiave privata e la chiave viene protetta con la chiave master del database.

OPEN MASTER KEY;
ALTER ASYMMETRIC KEY PacificSales09 WITH PRIVATE KEY (
    DECRYPTION BY PASSWORD = '<enterStrongPasswordHere>' );
GO

Vedere anche

Riferimento

CREATE ASYMMETRIC KEY (Transact-SQL)

DROP ASYMMETRIC KEY (Transact-SQL)

CREATE MASTER KEY (Transact-SQL)

OPEN MASTER KEY (Transact-SQL)

Concetti

Chiavi di crittografia del database e di SQL Server (Motore di database)

Gerarchia di crittografia

Extensible Key Management (EKM)