CERTPRIVATEKEY (Transact-SQL)

Si applica a:SQL Server database SQL di Azure Istanza gestita di SQL di Azure

Questa funzione restituisce la chiave privata di un certificato in formato binario. Questa funzione accetta tre argomenti.

  • ID certificato.
  • Password di crittografia, usata per crittografare i bit della chiave privata restituiti dalla funzione. Questo approccio non espone le chiavi come testo non crittografato agli utenti.
  • Password di decrittografia facoltativa. Per decrittografare la chiave privata del certificato viene usata una password di decrittografia specifica. Altrimenti viene usata la chiave master del database.

Solo gli utenti con accesso alla chiave privata del certificato possono usare questa funzione. Questa funzione restituisce la chiave privata nel formato PVK.

Sintassi

CERTPRIVATEKEY   
    (  
          cert_ID   
        , ' encryption_password '   
      [ , ' decryption_password ' ]  
    )  

Nota

Per visualizzare la sintassi Transact-SQL per SQL Server 2014 (12.x) e versioni precedenti, vedere la documentazione delle versioni precedenti.

Argomenti

certificate_ID
certificate_id del certificato. Ottenere questo valore da sys.certificates o dalla funzione CERT_ID (Transact-SQL). cert_id è un tipo di dati int.

encryption_password
Password utilizzata per crittografare il valore binario restituito.

decryption_password
Password utilizzata per decrittografare il valore binario restituito.

Tipi restituiti

varbinary

Osservazioni:

Usare CERTENCODED e CERTPRIVATEKEY insieme per restituire parti diverse di un certificato in formato binario.

Autorizzazioni

CERTPRIVATEKEY è disponibile pubblicamente.

Esempi

CREATE DATABASE TEST1;  
GO  
USE TEST1  
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'Use 5tr0ng P^55Words'  
GO  
CREATE CERTIFICATE Shipping04   
WITH SUBJECT = 'Sammamish Shipping Records',   
EXPIRY_DATE = '20401031';  
GO  
SELECT CERTPRIVATEKEY(CERT_ID('Shipping04'), 'jklalkaa/; uia3dd');  

Vedere CERTENCODED (Transact-SQL), esempio B, per un esempio più complesso che usa CERTPRIVATEKEY e CERTENCODED per copiare un certificato in un altro database.

Vedi anche

Funzioni di sicurezza (Transact-SQL)
CREATE CERTIFICATE (Transact-SQL)Funzioni di sicurezza (Transact-SQL)sys.certificates (Transact-SQL)