Compartilhar via


Conexão ao SQL Server com criptografia estrita

Aplica-se a: SQL Server 2022 (16.x)

A criptografia de conexão estrita impõe boas práticas de segurança e torna o tráfego do SQL Server gerenciável por dispositivos de rede padrão.

Neste artigo, saiba como se conectar ao SQL Server 2022 (16.x) e versões posteriores usando o tipo de conexão estrita.

Pré-requisito

Conectar-se ao SQL Server usando um aplicativo .NET

Para obter informações sobre como compilar e conectar-se ao SQL Server usando o tipo de criptografia strict, confira a Sintaxe da Cadeia de Conexão sobre como compilar corretamente a cadeia de conexão. Para obter mais informações sobre as novas propriedades da cadeia de conexão, confira Alterações adicionais nas propriedades de criptografia da cadeia de conexão.

Conexão usando um DSN de ODBC

Você pode testar uma conexão com o tipo de criptografia de conexão Strict usando um DSN de ODBC para SQL Server.

  1. Pesquise o aplicativo Fontes de Dados ODBC no Windows.

    Captura de tela do aplicativo de fontes de dados ODBC.

  2. Verifique se você tem o driver ODBC mais recente examinando a guia Drivers do Administrador da Fonte de Dados ODBC.

    Captura de tela dos drivers disponíveis.

  3. Na guia DSN do Sistema, selecione Adicionar para criar um DSN. Em seguida, selecione o Driver ODBC 18 para SQL Server. Selecione Concluir. Vamos usar isso para testar nossa conexão.

  4. Na janela Criar uma Fonte de Dados para o SQL Server, forneça um nome para a fonte de dados e adicione o nome do seu servidor SQL Server 2022 (16.x) ao Servidor. Selecione Avançar.

    Captura de tela da criação de uma fonte de dados usando o driver ODBC.

  5. Use todos os valores padrão para todas as configurações até chegar à tela que tem Criptografia de Conexão. Selecione Estrita. Se o nome do servidor que você inseriu for diferente daquele no certificado ou se o endereço IP for usado, defina HostName no certificado como aquele usado em seu certificado. Selecione Concluir.

    Captura de tela mostrando o tipo de criptografia estrita.

  6. Quando a caixa de diálogo Instalação do ODBC do Microsoft SQL Server aparecer, selecione o botão Testar Fonte de Dados... para testar a conexão. Isso deve impor a conexão strict com o SQL Server para este teste.

Você também pode testar a conexão com SQL Server com a criptografia strict usando o Driver do OLE DB com o UDL (Universal Data Link).

  1. Para criar um arquivo UDL para testar sua conexão, clique com o botão direito do mouse na área de trabalho e selecione Novo>Documento de Texto. Você precisará alterar a extensão de txt para udl. Você pode dar ao arquivo o nome que quiser.

    Observação

    Você precisará conseguir ver o nome da extensão para alterá-la de txt para udl. Se você não conseguir ver a extensão, habilite a exibição da extensão abrindo Explorador de Arquivos>Exibição>Mostrar>Extensões de nome de arquivo.

  2. Abra o arquivo UDL que você criou e acesse a guia Provedor para selecionar o Driver do Microsoft OLE DB 19 para SQL Server. Selecione Avançar>>.

    Captura de tela da tela do provedor UDL.

  3. Na guia Conexão, insira o nome do servidor do SQL Server e selecione o método de autenticação que você usa para fazer logon no SQL Server.

    Captura de tela da tela de conexão UDL.

  4. Na guia Avançado, selecione Estrita em Criptografia da conexão. Se o nome do servidor que você inseriu for diferente daquele no certificado ou se o endereço IP for usado, defina Nome do host no certificado como aquele usado em seu certificado. Volte à guia Conexão quando terminar.

    Captura de tela da tela avançada UDL.

  5. Selecione Testar Conectividade para testar a conexão com a criptografia de conexão strict.

    Captura da tela de conexão UDL e teste de conexão.

Conectar-se ao SSMS

A partir da versão 20, você pode impor criptografia estrita no SSMS (SQL Server Management Studio) na guia Logons da caixa de diálogo Conectar ao Servidor :

Captura de tela da caixa de diálogo Conectar-se ao servidor no SQL Server Management Studio.

Conectar-se a um grupo de disponibilidade Always On

A partir do SQL Server 2025 (17.x), você pode criptografar a comunicação entre o Cluster de Failover do Windows Server e uma réplica de grupo de disponibilidade Always On usando Strict ou Mandatory. Seu grupo de disponibilidade só poderá impor a criptografia se ela for baseada em um Cluster de Failover do Windows Server. Outros tipos de grupos de disponibilidade não dão suporte a criptografia estrita.

As etapas diferem com base em sua disponibilidade já existir ou não.

Para forçar a criptografia estrita a um novo grupo de disponibilidade, siga estas etapas:

  1. Caso ainda não tenha feito isso, importe o certificado TLS para cada réplica do grupo de disponibilidade, conforme definido pelos requisitos de certificado. Reinicie cada instância do SQL Server depois de importar o certificado.
  2. Teste as conexões com cada réplica do SQL Server usando um dos métodos mencionados neste artigo que impõe a criptografia.
  3. CREATE AVAILABILITY GROUP com a Encrypt propriedade definida Strict na CLUSTER_CONNECTION_OPTIONS cláusula do grupo de disponibilidade. Isso garante que todas as conexões com o grupo de disponibilidade usem o tipo de criptografia especificado.
  4. Se o grupo de disponibilidade estiver online no momento, faça failover do grupo de disponibilidade para uma réplica secundária para aplicar as novas configurações de criptografia ao grupo de disponibilidade. Se o grupo de disponibilidade não estiver online, pode ser que ClusterConnectionOptions não esteja definido corretamente. Verifique o cluster.log de erros ODBC relacionados ao cluster que não se conectou à réplica do SQL Server. Opcionalmente, você pode falhar o grupo de disponibilidade de volta à réplica primária original depois que a nova réplica secundária estiver online e conectada ao grupo de disponibilidade.
  5. (Opcional) Você pode impor ainda mais a criptografia definindo a opção Forçar Criptografia Estrita para Yes as propriedades do SQL Server Configuration Manager para o protocolo de conexão para cada réplica. Essa configuração garante que todas as conexões com as réplicas do grupo de disponibilidade usem criptografia estrita. Reinicie cada réplica do SQL Server depois de alterar essa configuração.

Conectar-se a uma instância de cluster de failover

A partir do SQL Server 2025 (17.x), você pode criptografar a comunicação entre o Cluster de Failover do Windows Server e uma instância de cluster de failover Always On usando o tipo de criptografia de conexão Strict ou Mandatory. Para fazer isso, siga estas etapas:

  1. Caso ainda não tenha feito isso, importe o certificado TLS para cada nó do cluster de failover, conforme definido pelos requisitos de certificado. Reinicie a instância do SQL Server depois de importar o certificado.
  2. Teste as conexões com a instância do cluster de failover usando um dos métodos mencionados neste artigo que impõe a criptografia.
  3. ALTER SERVER CONFIGURATION com a CLUSTER_CONNECTION_OPTIONS cláusula para a qual definir a Encrypt propriedade Mandatory ou Strict. Isso garante que todas as conexões com a instância do cluster de failover usem o tipo de criptografia especificado.
  4. Faça failover da instância em um nó secundário para aplicar as novas configurações de criptografia à instância do cluster de failover. Se a instância do cluster de failover não estiver online, poderá ser que ClusterConnectionOptions ela não esteja definida corretamente. Verifique o cluster.log de erros ODBC relacionados ao cluster que não se conectou à instância do SQL Server. Opcionalmente, você pode fazer failback da instância para o nó primário original depois que o novo nó secundário estiver online e conectado à instância do cluster de failover.
  5. (Opcional) Você pode impor ainda mais a criptografia definindo a opção Forçar Criptografia Estrita para Yes as propriedades do SQL Server Configuration Manager para o protocolo de conexão para cada nó no cluster. Essa configuração garante que todas as conexões com a instância do cluster de failover usem criptografia estrita. Faça essa alteração no nó secundário, faça failover da instância para ela e faça a alteração no nó primário.

Forçar criptografia estrita com o SQL Server Configuration Manager

Você pode impor criptografia estrita usando o SQL Server Configuration Manager a partir do SQL Server 2022 (16.x). Para fazer isso, siga estas etapas:

  1. Abra o SQL Server Configuration Manager.

  2. No painel esquerdo, expanda a Configuração de Rede do SQL Server e selecione Protocolos para [InstanceName].

  3. Clique com o botão direito do mouse em TCP/IP e selecione Propriedades.

  4. Na caixa de diálogo Propriedades TCP/IP , vá para a guia Sinalizadores e selecione Sim para a opção Forçar Criptografia Estrita :

    Captura de tela da opção Forçar Criptografia Estrita no SQL Server Configuration Manager.

  5. Reinicie a instância do SQL Server durante uma janela de manutenção para aplicar as alterações.

Comentários

Se você vir SSL certificate validation failed, valide que:

  • O certificado do servidor é válido no computador que você está usando para teste
  • Pelo menos um dos seguintes é verdadeiro:
    • O provedor do SQL Server corresponde ao nome da Autoridade de Certificação ou a um dos nomes DNS no certificado.
    • A propriedade de cadeia de conexão HostNameInCertificate corresponde ao nome da Autoridade de Certificação ou a um dos nomes DNS no certificado.