CERTPRIVATEKEY (Transact-SQL)

S’applique à :SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

Cette fonction retourne la clé privée d’un certificat au format binaire. Cette fonction accepte trois arguments.

  • Un ID de certificat.
  • Un mot de passe de chiffrement utilisé pour chiffrer les bits de clé privée retournés par la fonction. Cette approche n’expose pas les clés en texte clair aux utilisateurs.
  • Un mot de passe de déchiffrement facultatif. Un mot de passe de déchiffrement spécifié est utilisé pour déchiffrer la clé privée du certificat. Sinon, la clé principale de la base de données est utilisée.

Seuls les utilisateurs qui ont accès à la clé privée du certificat peuvent utiliser cette fonction. Cette fonction retourne la clé privée au format PVK.

Syntaxe

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

Remarque

Pour afficher la syntaxe Transact-SQL pour SQL Server 2014 (12.x) et versions antérieures, consultez la Documentation sur les versions antérieures.

Arguments

certificate_ID
certificate_id du certificat. Obtenez cette valeur à partir de sys.certificates ou à l’aide de la fonction CERT_ID (Transact-SQL). cert_id a le type de données int.

encryption_password
Mot de passe utilisé pour chiffrer la valeur binaire retournée.

decryption_password
Mot de passe utilisé pour déchiffrer la valeur binaire retournée.

Types de retour

varbinary

Notes

Les fonctions CERTENCODED et CERTPRIVATEKEY sont utilisées ensemble pour retourner les différentes parties d’un certificat sous forme binaire.

Autorisations

CERTPRIVATEKEY est disponible publiquement.

Exemples

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');  

Consultez CERTENCODED (Transact-SQL), Exemple B, pour obtenir un exemple plus complexe qui utilise CERTPRIVATEKEY et CERTENCODED afin de copier un certificat dans une autre base de données.

Voir aussi

Fonctions de sécurité (Transact-SQL)
CREATE CERTIFICATE (Transact-SQL)Fonctions de sécurité (Transact-SQL)sys.certificates (Transact-SQL)