TLS 1.3-stöd

Gäller för: SQL Server 2022 (16.x) och senare versioner Azure SQL DatabaseAzure SQL Managed InstanceSQL Database i Microsoft Fabric

SQL Server (från och med SQL Server 2022 (16.x)), Azure SQL Database och Azure SQL Managed Instance stöder TLS (Transport Layer Security) 1.3 när TDS (Tabular Data Stream) 8.0 används.

Viktigt!

Även med TLS 1.3-stöd för TDS-anslutningar krävs TLS 1.2 fortfarande för att starta SQL Server-satellittjänster. Inaktivera inte TLS 1.2 på datorn.

SQL Server 2019 (15.x) och tidigare versioner stöder inte TLS 1.3.

Skillnader mellan TLS 1.2 och TLS 1.3

TLS 1.3 minskar antalet tur- och returresor från två till en under handskakningsfasen, vilket gör det snabbare och säkrare än TLS 1.2. Server hello-paketet som innehåller servercertifikatet är krypterat och ett återupptagande av tur och retur (1-RTT) upphör och ersätts med 0-RTT-återupptagande baserat på klientnyckelresurs. Extra säkerhet för TLS 1.3 kommer från att avbryta vissa cyphers och algoritmer.

Här är en lista över algoritmer och chiffer som tagits bort i TLS 1.3:

  • RC4-ström chiffer
  • RSA-nyckelutbyte
  • SHA-1-hashfunktion
  • Chiffer för CBC-läge (block)
  • MD5-algoritm
  • Olika icke-övergående Diffie-Hellman-grupper
  • EXPORT-styrka chiffer
  • DES
  • 3DES

Drivrutinsstöd

Granska stödmatrisen för drivrutinsfunktionen för att avgöra vilka drivrutiner som för närvarande stöder TLS 1.3.

Stöd för operativsystem

För närvarande stöder följande operativsystem TLS 1.3:

Stöd för SQL Server 2025

SQL Server 2025 (17.x) introducerar TLS 1.3-stöd för följande funktioner:

Installationsbegränsningar

Konfigurationen av SQL Server 2025 misslyckas när TLS 1.3 är den enda TLS-versionen som är aktiverad i operativsystemet. Installationsprocessen kräver att TLS 1.2 är tillgängligt under installationen. När installationen är klar kan TLS 1.2 inaktiveras om du vill.

Felmeddelandet under installationen är: 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.)

Certifikatkrav

När du använder TDS 8.0 med SQL Server 2025 måste specifika certifikatkrav uppfyllas:

  • Betrodda certifikat: Certifikat måste utfärdas av en betrodd certifikatutfärdare (CA). Självsignerade certifikat accepteras inte längre som standard med Microsoft OLE DB-drivrutinen för SQL Server version 19.
  • Certifikatverifiering: TrustServerCertificate måste anges till False eller No. Microsoft OLE DB-drivrutinen för SQL Server version 19 verifierar att certifikatets förtroendekedja och certifikatverifiering inte kan kringgås.
  • Krav för alternativt namn på certifikatmottagare:Certifikat måste innehålla både det fullständigt kvalificerade domännamnet (FQDN) och Netbios-namnet i SAN-listan. SQL Server Management Studio (SSMS) använder ofta Netbios-namn vid anslutning, och saknade poster orsakar valideringsfel.
  • Planera SAN-poster: Inkludera alla möjliga klientanslutningsnamn (FQDN, Netbios-namn, tjänstalias) under certifikatutfärdning. Att lägga till namn senare kräver att du skapar ett nytt certifikat och startar om SQL Server-instansen.

Mer information om certifikatverifiering finns i Kryptering och certifikatvalidering – OLE DB-drivrutin för SQL Server.

Säkra konfigurationer som standard i SQL Server 2025

SQL Server 2025 introducerar säkra som standardkonfigurationer för flera funktioner som nu använder TDS 8.0 med kryptering aktiverat som standard:

  • SQL Server-agent: Använder Microsoft OLE DB-drivrutin för SQL Server version 19 med Encrypt=Mandatory och kräver giltiga servercertifikat med TrustServerCertificate=False. När den enda TLS-versionen är aktiverad är TLS 1.3 måste du konfigurera Encrypt=Strict (Tvinga strikt kryptering).

  • AlwaysOn-tillgänglighetsgrupper och FCIs: Använder ODBC-drivrutin för SQL Server version 18 med Encrypt=Mandatory som standard. Till skillnad från andra funktioner tillåter TrustServerCertificate=True AlwaysOn-tillgänglighetsgrupper och FCI:er självsignerade scenarier.

  • Länkade servrar: Använder Microsoft OLE DB-drivrutin för SQL Server version 19 med Encrypt=Mandatory som standard. Krypteringsparametern måste anges i anslutningssträngen när du riktar in dig på en annan SQL Server-instans.

  • Loggleverans: Använder Microsoft OLE DB-drivrutin för SQL Server version 19 med Encrypt=Mandatory och kräver giltiga servercertifikat. Vid uppgradering på plats från en äldre version, som saknar stöd för de senaste säkerhetskonfigurationerna, används loggöverföring TrustServerCertificate=True för bakåtkompatibilitet om inte krypteringsinställningarna uttryckligen åsidosätts med ett säkrare alternativ. Om du vill implementera TLS 1.3 och Encrypt=Strict med TDS 8.0 efter uppgradering, släpper du och återskapar topologin med de uppdaterade parametrarna i de lagrade procedurerna för loggöverföring.

  • Replikering: (Transactional, Snapshot, Merge) Använder Microsoft OLE DB-drivrutin för SQL Server version 19 med Encrypt=Mandatory och kräver giltiga certifikat med TrustServerCertificate=False.

  • Database Mail: Standardinställningarna är Encrypt=Optional och TrustServerCertificate=True. När TLS 1.3 tillämpas ändras dessa värden till Encrypt=Strict och TrustServerCertificate=False. Som standard använder Azure SQL Managed Instance TLS 1.3-protokollet.

  • PolyBase: Använder ODBC-drivrutin för SQL Server version 18 med Encrypt=Yes (Mandatory). PolyBase möjliggör TrustServerCertificate=True självsignerade scenarier.

  • SQL VSS Writer: När du ansluter till en SQL Server 2025-instans med Encryption=Strictanvänder SQL VSS Writer TLS 1.3 och TDS 8.0 för den icke-virtuella enhetsgränssnittsdelen (VDI) i anslutningen.

Komponentspecifika krav

  • SQL Server-agent med TLS 1.3: Du måste använda Force Strict Encryption (TDS 8.0) när TLS 1.3 är den enda versionen aktiverad. Lägre krypteringsinställningar (Mandatory eller Optional) resulterar i anslutningsfel.

  • SQL Server Agent T-SQL-jobb: SQL Server Agent T-SQL-jobb som ansluter till den lokala instansen ärver krypteringsinställningarna för SQL Server Agent.

  • PowerShell-moduler: SQLPS.exe och SQLPS PowerShell-modulen stöds för närvarande inte för TDS 8.0.

  • AlwaysOn-tillgänglighetsgrupper och FCI:er: Om du vill konfigurera strikt kryptering med TDS 8.0 använder du CLUSTER_CONNECTION_OPTIONS -satsen med Encrypt=Strict och redundans för att tillämpa inställningar.