Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a: SQL Server
Altera um fornecedor criptográfico dentro do SQL Server de um fornecedor de Gestão Extensível de Chaves (EKM).
Transact-SQL convenções de sintaxe
Syntax
ALTER CRYPTOGRAPHIC PROVIDER provider_name
[ FROM FILE = path_of_DLL ]
ENABLE | DISABLE
Arguments
provider_name
Nome do fornecedor de Gestão de Chaves Extensível.
Path_of_DLL
Caminho do ficheiro .dll que implementa a interface de gestão de chaves extensível SQL Server.
ATIVAR | DESATIVAR
Permite ou desativa um prestador.
Remarks
Se o fornecedor alterar o ficheiro .dll que é usado para implementar a Gestão de Chaves Extensível em SQL Server, deve usar a ALTER CRYPTOGRAPHIC PROVIDER instrução.
Quando o caminho do ficheiro .dll é atualizado usando a ALTER CRYPTOGRAPHIC PROVIDER instrução, SQL Server executa as seguintes ações:
- Desativa o prestador.
- Verifica a assinatura DLL e garante que o ficheiro .dll tem o mesmo GUID que o registado no catálogo.
- Atualiza a versão DLL no catálogo.
Quando um fornecedor EKM está definido para DESABILITAR, qualquer tentativa de novas ligações para usar o fornecedor com instruções de encriptação falhará.
Para desativar um fornecedor, todas as sessões que o utilizam devem ser terminadas.
Quando um fornecedor de EKM DLL não implementa todos os métodos necessários, ALTER CRYPTOGRAPHIC PROVIDER pode devolver o erro 33085:
One or more methods cannot be found in cryptographic provider library '%.*ls'.
Quando o ficheiro de cabeçalho usado para criar a dll do fornecedor EKM está desatualizado, ALTER CRYPTOGRAPHIC PROVIDER pode devolver o erro 33032:
SQL Crypto API version '%02d.%02d' implemented by provider is not supported. Supported version is '%02d.%02d'.
Permissions
Requer permissão CONTROL no fornecedor criptográfico.
Examples
O exemplo seguinte altera um fornecedor criptográfico, chamado SecurityProvider em SQL Server, para uma versão mais recente de um ficheiro .dll. Esta nova versão tem o nome c:\SecurityProvider\SecurityProvider_v2.dll e está instalada no servidor. O certificado do fornecedor deve ser instalado no servidor.
- Desative o fornecedor para realizar a atualização. Isto termina todas as sessões criptográficas abertas.
ALTER CRYPTOGRAPHIC PROVIDER SecurityProvider
DISABLE;
GO
- Atualiza o ficheiro .dll do provedor. O GUID deve ser igual à versão anterior, mas a versão pode ser diferente.
ALTER CRYPTOGRAPHIC PROVIDER SecurityProvider
FROM FILE = 'c:\SecurityProvider\SecurityProvider_v2.dll';
GO
- Ativa o fornecedor atualizado.
ALTER CRYPTOGRAPHIC PROVIDER SecurityProvider
ENABLE;
GO
Ver também
Gerenciamento extensível de chaves (EKM)
CREATE CRYPTOGRAPHIC PROVIDER (Transact-SQL)
DROP CRYPTOGRAPHIC PROVIDER (Transact-SQL)
CREATE SYMMETRIC KEY (Transact-SQL)
Gerenciamento extensível de chaves usando o Azure Key Vault (SQL Server)