Introdução
No ano passado, recebemos um requisito para garantir conexões criptografadas com nossas instâncias do SQL Server. Antes, achávamos que não era necessário – todas as nossas instâncias eram acessadas internamente por serviços de aplicação. Ainda assim, as conexões seguras protegem a instância e os clientes de ataques como intermediários, então fizemos isso.
A criptografia de conexão difere da Criptografia de dados transparente, mas você precisa de um certificado em ambos os casos. Neste artigo, descrevemos o procedimento de configuração de uma conexão criptografada para instâncias do SQL Server.
Configurando o Snap-in de certificado no MMC
Um certificado é um documento assinado digitalmente contendo chaves públicas e privadas que criptografam conexões. As chaves pública e privada são um “Par de Chaves” – a chave pública criptografa os dados e é apenas a chave privada que pode descriptografá-los.
Os certificados são emitidos por uma Autoridade de Certificação, uma entidade na qual o servidor e o cliente confiam. No nosso caso, geramos um certificado do servidor que hospeda o SQL Server.
Iniciamos esse processo iniciando o Microsoft Management Console (mmc.exe) .
Quando o MMC é iniciado, navegamos até Arquivo> Adicionar e remover snap-ins … (Figura 1). Aqui, adicionamos o snap-in Certificate Manager ao nosso console para gerenciar certificados no servidor. Observe que existem outras maneiras de chegar a esse ponto.

Queremos gerenciar certificados de nossa conta de computador de forma que outros administradores não tenham problemas com permissões quando também precisarem gerenciar certificados (Figura 2).

Neste artigo, estamos lidando com o gerenciamento de certificados no computador local onde nossa instância do SQL Server está instalada (Figura 3).


Depois de concluir o processo de criação do snap-in de certificado, podemos colocá-lo em uso.
Comece selecionando Todas as tarefas> Solicitar novo certificado :

Inscrevendo um certificado MMC
A ação da Figura 5 inicia um assistente – vamos executá-lo rapidamente. Os detalhes são mais relevantes para o Administrador do Windows, mas o crucial é obter um certificado válido que o SQL Server possa usar.
Verifique as condições necessárias:

Selecione uma política de inscrição e o tipo de certificado desejado. No nosso caso, selecionamos a política conforme configurada pelo nosso Administrador de Domínio para fins como este. Você pode falar com seu Administrador de Domínio para definir a melhor opção em seu ambiente.



O registro de certificado é o processo de solicitação de um certificado digital de uma Autoridade de Certificação. Em alguns ambientes, a CA faz parte da Infraestrutura de Chave Pública.

Configurando o SQL Server
Agora, quando temos o certificado, vamos para o SQL Server e o configuramos para usar esse certificado.
- Abra o SQL Server Configuration Manager e navegue em SQL Server Network Configuration> Protocols for MS SQL Server .
- Clique com o botão direito do mouse neste item e selecione Propriedades no menu suspenso (Figura 11):

- Nas Propriedades janela, selecione o Certificado aba. Se você fez a inscrição do certificado corretamente, você deve vê-lo listado no menu suspenso chamado Certificado (Figura 12). Ao fazer isso, associamos esse certificado à instância do SQL Server. Observe que também podemos ver os detalhes do certificado no SQL Server Configuration Manager.

- Depois de concluirmos a aplicação do certificado válido, passamos pelos Sinalizadores guia e defina a Forçar criptografia sinalizar para SIM . Ele garante que todas as conexões com o SQL Server sejam criptografadas.

O protocolo criptográfico que o SQL Server usa para a criptografia das conexões dependerá da configuração do sistema operacional. Em seguida, você deve reiniciar a instância do SQL Server. Ele carrega este novo certificado depois dele.
Podemos ver os dados no Visualizador de Eventos do Windows – o log de erros do SQL Server. Também podemos verificar a criptografia de conexões com ferramentas como o Monitor de Rede do Sys Internals (Figura 14).

Conclusão
Uma conexão criptografada normalmente é necessária em organizações preocupadas com a segurança. Neste artigo, compartilhamos nossa experiência sobre como configurar conexões criptografadas no SQL Server.
Nossa abordagem envolveu registrar um certificado, aplicar esse certificado a uma instância do SQL Server e habilitar a Criptografia Forçada. É essencial observar que quando você define Forçar Criptografia como YES no SQL Server, todos os clientes que se conectam à instância devem usar o mesmo protocolo criptográfico.
Referências
- Ativar conexões criptografadas
- Certificados do SQL Server e chaves assimétricas