ALTER CRYPTOGRAPHIC PROVIDER (Transact-SQL)
Altera um provedor criptográfico no SQL Server a partir de um provedor EKM (Gerenciamento de Chaves Extensível).
Se o provedor alterar o arquivo .dll usado para implementar o Gerenciamento de Chaves Extensível SQL Server, será necessário usar a instrução ALTER CRYPTOGRAPHIC PROVIDER.
Quando o caminho do arquivo .dll é atualizado usando a instrução ALTER CRYPTOGRAPHIC PROVIDER, o SQL Server executa as seguintes ações:
-
Desabilita o provedor.
-
Verifica a assinatura DLL e assegura que o arquivo .dll tenha o mesmo GUID que foi registrado no catálogo.
-
Atualiza a versão DLL no catálogo.
Quando um provedor EKM estiver definido como DISABLE, quaisquer tentativas de usar o provedor com instruções de criptografia em novas conexões falharão.
Para desabilitar um provedor, todas as sessões que o usam devem ser terminadas.
O exemplo a seguir altera um provedor criptográfico, chamado SecurityProvider no SQL Server, para uma versão mais nova de um arquivo .dll. Essa nova versão é chamada c:\SecurityProvider\SecurityProvider_v2.dll e é instalada no servidor. O certificado do provedor deve ser instalado no servidor.
/* First, disable the provider to perform the upgrade. This will terminate all open cryptographic sessions */ ALTER CRYPTOGRAPHIC PROVIDER SecurityProvider DISABLE; GO /* Upgrade the provider .dll file. The GUID must the same as the previous version, but the version can be different. */ ALTER CRYPTOGRAPHIC PROVIDER SecurityProvider FROM FILE = 'c:\SecurityProvider\SecurityProvider_v2.dll'; GO /* Enable the upgraded provider. */ ALTER CRYPTOGRAPHIC PROVIDER SecurityProvider ENABLE; GO