ALTER SERVICE MASTER KEY (Transact-SQL)

Modifica la chiave master del servizio di un'istanza di SQL Server.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

ALTER SERVICE MASTER KEY 
    [ { <regenerate_option> | <recover_option> } ] [;]

<regenerate_option> ::=
    [ FORCE ] REGENERATE

<recover_option> ::=
    { WITH OLD_ACCOUNT = 'account_name' , OLD_PASSWORD = 'password' }
    |    
    { WITH NEW_ACCOUNT = 'account_name' , NEW_PASSWORD = 'password' }

Argomenti

  • FORCE
    Indica che la chiave master del servizio deve essere rigenerata, anche a rischio di perdita dei dati. Per ulteriori informazioni, vedere Modifica dell'account del servizio SQL Server più avanti in questo argomento.

  • REGENERATE
    Indica che la chiave master del servizio deve essere rigenerata.

  • OLD_ACCOUNT ='account_name'
    Specifica il nome dell'account del servizio Windows precedente.

    Nota di attenzioneAttenzione

    Questa opzione è obsoleta. Non utilizzare. Utilizzare invece Gestione configurazione SQL Server.

  • OLD_PASSWORD ='password'
    Specifica la password dell'account del servizio Windows precedente.

    Nota di attenzioneAttenzione

    Questa opzione è obsoleta. Non utilizzare. Utilizzare invece Gestione configurazione SQL Server.

  • NEW_ACCOUNT ='account_name'
    Specifica il nome del nuovo account del servizio Windows.

    Nota di attenzioneAttenzione

    Questa opzione è obsoleta. Non utilizzare. Utilizzare invece Gestione configurazione SQL Server.

  • NEW_PASSWORD ='password'
    Specifica la password del nuovo account del servizio Windows.

    Nota di attenzioneAttenzione

    Questa opzione è obsoleta. Non utilizzare. Utilizzare invece Gestione configurazione SQL Server.

Osservazioni

La chiave master del servizio viene generata automaticamente la prima volta che risulta necessaria per crittografare la password di un server collegato, una credenziale o la chiave master del database. La chiave master del servizio viene crittografata mediante la chiave del computer locale o l'API Windows per la protezione dei dati (DAPI, Data Protection API). Questa API utilizza una chiave derivata dalle credenziali di Windows dell'account del servizio SQL Server.

La chiave master del servizio può essere decrittografata solo dall'account del servizio con cui è stata creata o da un'entità autorizzata ad accedere alle credenziali di Windows di tale account del servizio. Per questo motivo, se si modifica l'account di Windows utilizzato per l'esecuzione del servizio SQL Server, è necessario impostare anche il nuovo account per consentire la decrittografia della chiave master del servizio.

Modifica dell'account del servizio SQL Server

Per modificare l'account del servizio SQL Server, utilizzare Gestione configurazione SQL Server. Per gestire una modifica dell'account del servizio, tramite SQL Server iene archiviata una copia ridondante della chiave master del servizio protetta dall'account del computer che dispone delle autorizzazioni necessarie concesse al gruppo di servizi di SQL Server. Se il computer viene ricompilato, lo stesso utente di dominio utilizzato in precedenza dall'account del servizio può recuperare la chiave master del servizio. Questa operazione non è possibile con gli account locali o con l'account di sistema locale, Servizio locale o Servizio di rete. Quando si sposta SQL Server in un altro computer, eseguire la migrazione della chiave master del servizio utilizzando la procedura di backup e ripristino.

L'istruzione REGENERATE consente di rigenerare la chiave master del servizio. In seguito alla rigenerazione della chiave master del servizio, SQL Server decrittografa tutte le chiavi crittografate con tale chiave e quindi le crittografa con la nuova chiave master del servizio. Si tratta di un'operazione che utilizza molte risorse e pertanto dovrebbe essere pianificata in periodi di carico ridotto, a meno che la chiave non sia stata compromessa. In caso di esito negativo di una qualsiasi delle operazioni di decrittografia, l'intera istruzione avrà esito negativo.

L'opzione FORCE consente di continuare il processo di rigenerazione della chiave anche se non è possibile recuperare la chiave master corrente o decrittografare tutte le chiavi private crittografate con tale chiave master. Utilizzare l'opzione FORCE solo se la rigenerazione non riesce e se non è possibile ripristinare la chiave master del servizio tramite l'istruzione RESTORE SERVICE MASTER KEY.

Nota di attenzioneAttenzione

La chiave master del servizio è l'elemento radice della gerarchia di crittografia di SQL Server. Con la chiave master del servizio vengono protetti direttamente o indirettamente tutte le altre chiavi e tutti i segreti nell'albero. Se non è possibile decrittografare una chiave dipendente durante una rigenerazione forzata, i dati protetti dalla chiave andranno perduti.

Le opzioni di MACHINE KEY consentono di aggiungere o rimuovere la crittografia mediante la chiave del computer.

Autorizzazioni

È richiesta l'autorizzazione CONTROL SERVER per il server.

Esempi

Nell'esempio seguente viene rigenerata la chiave master del servizio.

ALTER SERVICE MASTER KEY REGENERATE;
GO