Suporte a TLS 1.3

Aplica-se a: SQL Server 2022 (16.x) e versões posteriores Banco de Dados SQL do AzureInstância Gerenciada de SQL do AzureBanco de dados SQL no Microsoft Fabric

O SQL Server (começando com o SQL Server 2022 (16.x)), o Banco de Dados SQL do Azure e a Instância Gerenciada de SQL do Azure dão suporte ao TLS (Transport Layer Security) 1.3 quando o TDS (Fluxo de Dados Tabular) 8.0 é usado.

Importante

Mesmo com o suporte ao TLS 1.3 para conexões TDS, o TLS 1.2 ainda é necessário para iniciar os serviços de satélite do SQL Server. Não desabilte o TLS 1.2 no computador.

O SQL Server 2019 (15.x) e versões anteriores não dão suporte ao TLS 1.3.

Diferenças entre o TLS 1.2 e o TLS 1.3

O TLS 1.3 reduz o número de viagens de ida e volta de duas para uma durante a fase de handshake, tornando-o mais rápido e seguro que o TLS 1.2. O pacote de handshake do servidor que contém o certificado do servidor é criptografado e a retomada de uma viagem de ida e volta (1-RTT) é descontinuada e substituída pela retomada de 0-RTT com base no compartilhamento de chave do cliente. A maior segurança do TLS 1.3 vem da descontinuação de determinadas criptografias e algoritmos.

Veja uma lista de algoritmos e criptografias removidas no TLS 1.3:

  • Criptografia de fluxo RC4
  • Troca de chave RSA
  • Função de hash SHA-1
  • Criptografias do modo CBC (Block)
  • Algoritmo MD5
  • Vários grupos de Diffie-Hellman não efêmeros
  • Criptografias de força de exportação
  • DES
  • 3DES

Suporte a driver

Examine a matriz de suporte ao recurso Driver para determinar quais drivers atualmente são compatíveis com o TLS 1.3.

Suporte do sistema operacional

No momento, os seguintes sistemas operacionais são compatíveis com o TLS 1.3:

Suporte ao SQL Server 2025

O SQL Server 2025 (17.x) apresenta suporte ao TLS 1.3 para os seguintes recursos:

Limitações de instalação

A instalação do SQL Server 2025 falha quando o TLS 1.3 é a única versão do TLS habilitada no sistema operacional. O processo de instalação requer que o TLS 1.2 esteja disponível durante a instalação. Após a conclusão da instalação, o TLS 1.2 poderá ser desabilitado, se desejado.

A mensagem de erro durante a instalação é: A connection was successfully established with the server, but then an error occurred during the login process. (provider: SSL Provider, error: 0 - No process is on the other end of the pipe.)

Requisitos de certificado

Ao usar o TDS 8.0 com o SQL Server 2025, requisitos de certificado específicos devem ser atendidos:

  • Certificados confiáveis: os certificados devem ser emitidos por uma AC (Autoridade de Certificação) confiável. Certificados autoassinados não são mais aceitos por padrão com o Microsoft Driver do OLE DB para SQL Server versão 19.
  • Validação de certificado: TrustServerCertificate deve ser definida como False ou No. O Driver do Microsoft OLE DB para SQL Server versão 19 valida a cadeia de confiança do certificado e a validação de certificado não pode ser ignorada.
  • Requisitos de SAN (Nome alternativo da entidade): os certificados devem incluir o FQDN (nome de domínio totalmente qualificado) e o nome Netbios na lista SAN. O SSMS (SQL Server Management Studio) geralmente usa nomes Netbios ao se conectar e entradas ausentes causarão erros de validação.
  • Planejando entradas SAN: inclua todos os nomes de conexão de cliente possíveis (FQDN, nomes Netbios, aliases de serviço) durante a emissão do certificado. Adicionar nomes posteriormente requer a criação de um novo certificado e a reinicialização da instância do SQL Server.

Para obter mais informações sobre validação de certificado, consulte Criptografia e validação de certificado – Driver do OLE DB para SQL Server.

Configurações seguras por padrão no SQL Server 2025

O SQL Server 2025 introduz configurações seguras por padrão para vários recursos que agora usam o TDS 8.0 com criptografia habilitada por padrão:

  • SQL Server Agent: Usa o Microsoft OLE DB Driver para SQL Server versão 19 com Encrypt=Mandatory e requer certificados de servidor válidos com TrustServerCertificate definido como No. Quando a única versão do TLS habilitada for o TLS 1.3, você deverá configurar Encrypt=Strict (Forçar Criptografia Estrita).

  • Grupos de disponibilidade Always On e FCIs: usa o Driver ODBC para SQL Server versão 18 com Encrypt=Mandatory por padrão. Ao contrário de outros recursos, grupos de disponibilidade Always On e FCIs permitem TrustServerCertificate=Yes cenários autoassinados.

  • Servidores vinculados: usa o Microsoft Driver do OLE DB para SQL Server versão 19 com Encrypt=Mandatory por padrão. O parâmetro de criptografia deve ser especificado na cadeia de conexão ao se conectar a outra instância do SQL Server.

  • Envio de logs: usa o Microsoft Driver do OLE DB para SQL Server versão 19 com Encrypt=Mandatory e requer certificados de servidor válidos. Ao realizar uma atualização in-loco de uma versão inferior, que não dá suporte às configurações de segurança mais recentes, se as configurações de criptografia não forem explicitamente substituídas por uma opção mais segura, o envio de logs usará TrustServerCertificate=Yes para possibilitar a compatibilidade com versões anteriores. Para impor o TLS 1.3 e Encrypt=Strict com o TDS 8.0 após a atualização, remova e recrie a topologia com os parâmetros atualizados nos procedimentos armazenados de envio de logs.

  • Replicação: (Transacional, Instantâneo, Mesclagem) usa o Driver do Microsoft OLE DB para SQL Server versão 19 com Encrypt=Mandatory e requer certificados válidos com TrustServerCertificate=False.

  • Database Mail: as configurações padrão são Encrypt=Optional e TrustServerCertificate=Yes. Quando o TLS 1.3 é imposto, esses valores são alterados para Encrypt=Strict e TrustServerCertificate=False. Por padrão, a Instância Gerenciada de SQL do Azure usa o protocolo TLS 1.3.

  • PolyBase: usa o Driver ODBC para SQL Server versão 18 com Encrypt=Yes (Mandatory). O PolyBase permite cenários TrustServerCertificate=Yes autoassinados.

  • Gravador VSS do SQL: ao se conectar a uma instância do SQL Server 2025 com Encryption=Strict, o Gravador VSS do SQL usará o TLS 1.3 e o TDS 8.0 para a parte da VDI (Interface de Dispositivo Não Virtual) dessa conexão.

Requisitos específicos do componente

  • SQL Server Agent com TLS 1.3: você deve usar o TDS 8.0 (Force Strict Encryption) quando o TLS 1.3 for a única versão habilitada. Configurações de criptografia inferiores (Mandatory ou Optional) resultam em falhas de conexão.

  • Trabalhos T-SQL do SQL Server Agent: trabalhos T-SQL do SQL Server Agent conectados à instância local herdam as configurações de criptografia do SQL Server Agent.

  • Módulos do PowerShell: SQLPS.exe e o módulo do SQLPS PowerShell atualmente não têm suporte para o TDS 8.0.

  • Grupos de disponibilidade Always On e FCIs: para configurar a criptografia estrita com o TDS 8.0, use a cláusula CLUSTER_CONNECTION_OPTIONS com Encrypt=Strict e failover para aplicar as configurações.