BACKUP CERTIFICATE (Transact-SQL)

Esporta un certificato in un file.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

BACKUP CERTIFICATE certname TO FILE = 'path_to_file'
    [ WITH PRIVATE KEY 
      ( 
        FILE = 'path_to_private_key_file' ,
        ENCRYPTION BY PASSWORD = 'encryption_password' 
        [ , DECRYPTION BY PASSWORD = 'decryption_password' ] 
      ) 
    ]

Argomenti

  • path_to_file
    Specifica il percorso completo, nome di file incluso, del file in cui verrà salvato il certificato. Questo parametro può essere un percorso locale o un percorso UNC di rete. L'impostazione predefinita è rappresentata dal percorso della cartella DATA di SQL Server.

  • path_to_private_key_file
    Specifica il percorso completo, nome di file incluso, del file in cui verrà salvata la chiave privata. Questo parametro può essere un percorso locale o un percorso UNC di rete. L'impostazione predefinita è rappresentata dal percorso della cartella DATA di SQL Server.

  • encryption_password
    Password utilizzata per crittografare la chiave privata prima di scriverla nel file di backup. Questa password è soggetta ai controlli di complessità delle password.

  • decryption_password
    Password utilizzata per decrittografare la chiave privata prima di eseguire il backup della chiave.

Osservazioni

Se la chiave privata è crittografata con una password nel database, è necessario specificare la password di decrittografia.

Quando si esegue il backup della chiave privata in un file, la crittografia è obbligatoria. La password utilizzata per proteggere il certificato sottoposto a backup non corrisponde alla password utilizzata per crittografare la chiave privata del certificato.

Per ripristinare un certificato da un backup, utilizzare l'istruzione CREATE CERTIFICATE.

Autorizzazioni

È richiesta l'autorizzazione CONTROL per il certificato ed è necessario conoscere la password utilizzata per crittografare la chiave privata. Se si esegue il backup della sola parte pubblica del certificato, sono richieste alcune autorizzazioni per il certificato ed è necessario che al chiamante non sia stata negata l'autorizzazione VIEW per il certificato.

Esempi

A. Esportazione di un certificato in un file

Nell'esempio seguente un certificato viene esportato in un file.

BACKUP CERTIFICATE sales05 TO FILE = 'c:\storedcerts\sales05cert';
GO

B. Esportazione di un certificato e di una chiave privata

Nell'esempio seguente la chiave privata del certificato di cui si esegue il backup verrà crittografata con la password 997jkhUbhk$w4ez0876hKHJH5gh.

BACKUP CERTIFICATE sales05 TO FILE = 'c:\storedcerts\sales05cert'
    WITH PRIVATE KEY ( FILE = 'c:\storedkeys\sales05key' , 
    ENCRYPTION BY PASSWORD = '997jkhUbhk$w4ez0876hKHJH5gh' );
GO

C. Esportazione di un certificato con una chiave privata crittografata

Nell'esempio seguente la chiave privata del certificato è crittografata nel database ed è necessario decrittografarla con la password 9875t6#6rfid7vble7r. Quando il certificato viene archiviato nel file di backup, la chiave privata verrà crittografata con la password 9n34khUbhk$w4ecJH5gh.

BACKUP CERTIFICATE sales09 TO FILE = 'c:\storedcerts\sales09cert' 
    WITH PRIVATE KEY ( DECRYPTION BY PASSWORD = '9875t6#6rfid7vble7r' ,
    FILE = 'c:\storedkeys\sales09key' , 
    ENCRYPTION BY PASSWORD = '9n34khUbhk$w4ecJH5gh' );
GO