Compartilhar via


CREATE CRYPTOGRAPHIC PROVIDER (Transact-SQL)

Cria um provedor criptográfico no SQL Server a partir de um provedor EKM (Gerenciamento Extensível de Chaves).

Ícone de vínculo de tópico Convenções de sintaxe Transact-SQL

Sintaxe

CREATE CRYPTOGRAPHIC PROVIDER provider_name 
    FROM FILE = path_of_DLL

Argumentos

  • provider_name
    É o nome do provedor de Gerenciamento Extensível de Chaves.

  • path_of_DLL
    É o caminho do arquivo .dll que implementa o Gerenciamento Extensível de Chaves do SQL Server.

Comentários

Todas as chaves criadas por um provedor farão referência ao provedor por meio de seu GUID. O GUID é retido em todas as versões da DLL.

A DLL que implementa a interface SQLEKM deve ser assinada digitalmente usando qualquer certificado. O SQL Server verificará a assinatura. Isso inclui sua cadeia de certificado, que deve ter sua raiz instalada no local Trusted Root Cert Authorities em um sistema Windows. Se a assinatura não for verificada corretamente, a instrução CREATE CRYPTOGRAPHIC PROVIDER falhará. Para obter mais informações sobre certificados e cadeias de certificados, consulte Certificados e chaves assimétricas do SQL Server.

Quando uma dll de provedor EKM não implementar todos os métodos necessários, CREATE CRYPTOGRAPHIC PROVIDER poderá retornar o erro 33085:

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

Quando o arquivo de cabeçalho usado para criar a dll de provedor EKM estiver desatualizado, CREATE CRYPTOGRAPHIC PROVIDER poderá retornar o erro 33032:

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

Permissões

Requer a permissão CONTROL SERVER ou associação na função de servidor fixa sysadmin.

Exemplos

O exemplo a seguir cria um provedor criptográfico chamado SecurityProvider no SQL Server a partir de um arquivo .dll. O arquivo .dll é nomeado de c:\SecurityProvider\SecurityProvider_v1.dll e instalado no servidor. O certificado do provedor deve ser instalado primeiro no servidor.

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

Consulte também

Referência

ALTER CRYPTOGRAPHIC PROVIDER (Transact-SQL)

DROP CRYPTOGRAPHIC PROVIDER (Transact-SQL)

CREATE SYMMETRIC KEY (Transact-SQL)

Conceitos

Gerenciamento extensível de chaves (EKM)