Dela via


CERTPRIVATEKEY (Transact-SQL)

Gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL-databas i Förhandsversion av Microsoft Fabric

Den här funktionen returnerar den privata nyckeln för ett certifikat i binärt format. Den här funktionen tar tre argument.

  • Ett certifikat-ID.
  • Ett krypteringslösenord som används för att kryptera de privata nyckelbitar som returneras av funktionen. Den här metoden exponerar inte nycklarna som klartext för användarna.
  • Ett valfritt dekrypteringslösenord. Ett angivet dekrypteringslösenord används för att dekryptera certifikatets privata nyckel. Annars används huvudnyckeln för databasen.

Endast användare med åtkomst till certifikatets privata nyckel kan använda den här funktionen. Den här funktionen returnerar den privata nyckeln i PVK-format.

Syntax

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

Arguments

certificate_ID
Certifikatets certificate_id. Hämta det här värdet från sys.certificates eller från funktionen CERT_ID (Transact-SQL). cert_id har datatypen int.

encryption_password
Lösenordet som används för att kryptera det returnerade binära värdet.

decryption_password
Lösenordet som används för att dekryptera det returnerade binära värdet.

Return types

varbinary

Remarks

Använd CERTENCODED och CERTPRIVATEKEY tillsammans för att returnera olika delar av ett certifikat, i binär form.

Permissions

CERTPRIVATEKEY är offentligt tillgängligt.

Examples

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

Se CERTENCODED (Transact-SQL), Exempel B, för ett mer komplext exempel som använder CERTPRIVATEKEY och CERTENCODED för att kopiera ett certifikat till en annan databas.

See also

Security Functions (Transact-SQL)
SKAPA CERTIFIKAT (Transact-SQL)Säkerhetsfunktioner (Transact-SQL)sys.certificates (Transact-SQL)