Share via


CREATE CRYPTOGRAPHIC PROVIDER (Transact-SQL)

Crea un provider del servizio di crittografia in SQL Server da un provider EKM (Extensible Key Management).

Icona di collegamento a un argomento Convenzioni della sintassi Transact-SQL

Sintassi

CREATE CRYPTOGRAPHIC PROVIDER provider_name 
    FROM FILE = path_of_DLL

Argomenti

  • provider_name
    Nome del provider EKM.

  • path_of_DLL
    Percorso del file dll che implementa l'interfaccia EKM di SQL Server.

Osservazioni

Tutte le chiavi create da un provider faranno riferimento al provider attraverso il GUID. Il GUID viene mantenuto per tutte le versioni della DLL.

La DLL che implementa l'interfaccia SQLEKM deve essere firmata digitalmente utilizzando qualsiasi certificato. SQL Server verificherà la firma. Include la catena di certificati, la cui radice deve essere installata nel percorso Trusted Root Cert Authorities in un sistema Windows. Se la firma non viene verificata correttamente, l'istruzione CREATE CRYPTOGRAPHIC PROVIDER avrà esito negativo. Per ulteriori informazioni sui certificati e sulle catene di certificati, vedere Certificati SQL Server e chiavi simmetriche.

Quando la DLL di un provider EKM non implementa tutti i metodi necessari, CREATE CRYPTOGRAPHIC PROVIDER può restituire l'errore 33085:

One or more methods cannot be found in cryptographic provider library '%.*ls'.

Quando il file di intestazione utilizzato per creare la DLL del provider EKM non è aggiornato, CREATE CRYPTOGRAPHIC PROVIDER può restituire l'errore 33032:

SQL Crypto API version '%02d. %02d' implemented by provider is not supported. Supported version is '%02d. %02d'.

Autorizzazioni

È richiesta l'autorizzazione CONTROL SERVER o l'appartenenza al ruolo predefinito del server sysadmin.

Esempi

Nell'esempio seguente viene creato un provider del servizio di crittografia denominato SecurityProvider in SQL Server da un file dll. Il file dll è denominato c:\SecurityProvider\SecurityProvider_v1.dll ed è installato nel server. Il certificato del provider deve prima essere installato nel server.

-- Install the provider
CREATE CRYPTOGRAPHIC PROVIDER SecurityProvider
    FROM FILE = 'c:\SecurityProvider\SecurityProvider_v1.dll'

Vedere anche

Riferimento

ALTER CRYPTOGRAPHIC PROVIDER (Transact-SQL)

DROP CRYPTOGRAPHIC PROVIDER (Transact-SQL)

CREATE SYMMETRIC KEY (Transact-SQL)

Concetti

Extensible Key Management (EKM)