Applies ToWin 10 Ent LTSC 2019 Win 10 IoT Ent LTSC 2019 Windows 10 IoT Core LTSC Windows Server 2019 Windows 10 Enterprise Multi-Session, version 20H2 Windows 10 Enterprise and Education, version 20H2 Windows 10 IoT Enterprise, version 20H2 Windows 10 on Surface Hub Windows 10, version 21H1, all editions Windows 10, version 21H2, all editions

Shrnutí

Protokol TLS (Transport Layer Security) 1.0 a 1.1 jsou protokoly zabezpečení pro vytváření šifrovacích kanálů přes počítačové sítě. Microsoft je podporuje od windows XP a Windows Serveru 2003. Zákonné požadavky se ale mění. V protokolu TLS 1.0 jsou také nové slabiny zabezpečení. Proto Microsoft doporučuje odebrat závislosti TLS 1.0 a 1.1. Doporučujeme také zakázat protokoly TLS 1.0 a 1.1 na úrovni operačního systému, kde je to možné. Další podrobnosti najdete v tématu Zakázání protokolů TLS 1.0 a 1.1. V aktualizaci Preview z 20. září 2022 zakážeme ve výchozím nastavení protokoly TLS 1.0 a 1.1 pro aplikace založené na winhttp a wininetu. To je součástí průběžného úsilí. Tento článek vám pomůže je znovu povolit. Tyto změny se projeví po instalaci aktualizací Windows vydaných 20. září 2022 nebo později.  

Chování při přístupu k odkazům TLS 1.0 a 1.1 v prohlížeči

Po 20. září 2022 se zobrazí zpráva, když prohlížeč otevře web, který používá protokol TLS 1.0 nebo 1.1. Viz obrázek 1. Zpráva uvádí, že web používá zastaralý nebo nebezpečný protokol TLS. Pokud to chcete vyřešit, můžete aktualizovat protokol TLS na TLS 1.2 nebo vyšší. Pokud to není možné, můžete protokol TLS povolit, jak je popsáno v části Povolení protokolu TLS verze 1.1 a níže.

Okno Internet Exploreru při přístupu k propojení TLS 1.0 a 1.1

Obrázek 1: Okno prohlížeče při přístupu na webovou stránku tls 1.0 a 1.1

Chování při přístupu k odkazům TLS 1.0 a 1.1 v aplikacích winhttp

Po aktualizaci můžou aplikace založené na winhttp selhat. Chybová zpráva je " ERROR_WINHTTP_SECURE_FAILURE při provádění operace WinHttpSendRequest."

Chování při přístupu k odkazům TLS 1.0 a 1.1 ve vlastních aplikacích uživatelského rozhraní na základě winhttp nebo wininetu

Když se aplikace pokusí vytvořit připojení pomocí protokolu TLS 1.1 nebo novějšího, může se zdát, že připojení selže. Když aplikaci zavřete nebo přestane fungovat, zobrazí se dialogové okno Pomocníka s kompatibilitou programů (PCA), jak je znázorněno na obrázku 2.

Automaticky otevírané okno Pomocníka s kompatibilitou programů po zavření aplikace

Obrázek 2: Dialogové okno Pomocníka s kompatibilitou programů po zavření aplikace

V dialogovém okně PCA se zobrazí zpráva "Tento program pravděpodobně neběžel správně". Pod tím jsou dvě možnosti:

  • Spusťte program pomocí nastavení kompatibility.

  • Tento program běžel správně.

Spusťte program pomocí nastavení kompatibility.

Když zvolíte tuto možnost, aplikace se znovu otevře. Všechny odkazy, které používají protokol TLS 1.0 a 1.1, teď fungují správně. Od té verze se nezobrazí žádné dialogové okno PCA. Editor registru přidá položky do následujících cest:

  • Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Compatibility Assistant\Store

  • Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers. 

Pokud jste tuto možnost zvolili omylem, můžete tyto položky odstranit. Pokud je odstraníte, při příštím otevření aplikace se zobrazí dialogové okno PCA.

Seznam programů, které by se měly spouštět pomocí nastavení kompatibility

Obrázek 3: Seznam programů, které by se měly spustit pomocí nastavení kompatibility

Tento program běžel správně.

Když zvolíte tuto možnost, aplikace se normálně zavře. Při příštím opětovném otevření aplikace se nezobrazí žádné dialogové okno PCA. Systém blokuje veškerý obsah tls 1.0 a 1.1. Editor registru přidá následující položku do cesty Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Compatibility Assistant\Store. Viz obrázek 4. Pokud jste tuto možnost zvolili omylem, můžete tuto položku odstranit. Pokud položku odstraníte, při příštím otevření aplikace se zobrazí dialogové okno PCA.

Položka v editoru registru určující, že aplikace běžela správně

Obrázek 4: Položka v Editoru registru oznamující, že aplikace běžela správně

Důležité Starší protokoly TLS jsou povolené jenom pro konkrétní aplikace. To platí i v případě, že jsou zakázané v celosystémových nastaveních.

Povolení protokolu TLS verze 1.1 a novější (nastavení wininetu a Internet Exploreru)

Nedoporučujeme povolovat protokol TLS 1.1 a novější, protože se už nepovažují za bezpečné. Jsou zranitelní vůči různým útokům, jako je útok PUDL. Před povolením protokolu TLS 1.1 proto proveďte jednu z následujících věcí:

  • Zkontrolujte, jestli je k dispozici novější verze aplikace.

  • Požádejte vývojáře aplikace, aby v aplikaci udělal změny konfigurace a odebral závislost na protokolu TLS 1.1 a novějším.

V případě, že žádné z řešení nefunguje, existují dva způsoby, jak povolit starší protokoly TLS v nastavení pro celý systém:

  • Možnosti Internetu

  • Editor zásad skupiny

Možnosti Internetu

Možnosti Internetu otevřete tak, že do vyhledávacího pole na hlavním panelu zadáte Možnosti Internetu . Můžete také vybrat Změnit nastavení v dialogovém okně zobrazeném na obrázku 1. Na kartě Upřesnit se posuňte dolů na panelu Nastavení . Tam můžete povolit nebo zakázat protokoly TLS.

Okno Možnosti Internetu

Obrázek 5: Dialogové okno Vlastnosti internetu

Editor Zásady skupiny

Editor Zásady skupiny otevřete tak, že do vyhledávacího pole na hlavním panelu zadáte gpedit.msc. Zobrazí se okno podobné tomu, které je znázorněno na obrázku 6. 

Okno editoru zásad skupiny

Obrázek 6: okno editoru Zásady skupiny

  1. Přejděte do části > zásad místního počítače(Konfigurace počítače nebo Konfigurace uživatele) > tempty správy > součásti systému Windows > Internet Explorer > Internet Ovládací panely > Upřesnit stránky > Vypnout podporu šifrování. Viz obrázek 7.

  2. Poklikejte na Vypnout podporu šifrování.

    Cesta k vypnutí podpory šifrování v GPedit.msc

    Obrázek 7: Cesta k vypnutí podpory šifrování v editoru Zásady skupiny

  3. Vyberte možnost Povoleno . Pak pomocí rozevíracího seznamu vyberte verzi protokolu TLS, kterou chcete povolit, jak je znázorněno na obrázku 8.

    Vypnutí podpory šifrování povolenou pomocí rozevíracího seznamu zobrazujícího různé možnosti

    Obrázek 8: Povolení vypnutí podpory šifrování a rozevíracího seznamu

Jakmile zásadu povolíte v editoru Zásady skupiny, nebudete ji moct změnit v možnostech Internetu. Pokud například vyberete Použít SSL3.0 a TLS 1.0, nebudou všechny ostatní možnosti v Možnostech Internetu dostupné. Viz obrázek 9. Pokud v editoru Zásady skupiny povolíte možnost Vypnout podporu šifrování, nemůžete změnit žádné nastavení v možnostech Internetu.

Možnosti internetu s neaktivními nastaveními SSL a TLS

Obrázek 9: Možnosti internetu zobrazující nedostupná nastavení PROTOKOLU SSL a TLS

Povolení protokolu TLS verze 1.1 a novější (nastavení winhttp)

Viz Aktualizace pro povolení tls 1.1 a TLS 1.2 jako výchozích zabezpečených protokolů ve WinHTTP ve Windows.

Důležité cesty registru (nastavení wininetu a Internet Exploreru)

  • Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings

    • Tady najdete Protokol SecureProtocols, který ukládá hodnotu aktuálně povolených protokolů, pokud používáte editor Zásady skupiny.

  • Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings

    • Tady najdete Protokol SecureProtocols, který ukládá hodnotu aktuálně povolených protokolů, pokud používáte Možnosti Internetu.

  • Zásady skupiny SecureProtocols bude mít přednost před protokolem nastaveným v možnostech Internetu.

Povolení nezabezpečeného záložního šifrování TLS

Výše uvedené úpravy povolí protokoly TLS 1.0 a TLS 1.1. Nepovolí ale náhradní tls. Pokud chcete povolit náhradní protokol TLS, musíte v registru v následujících cestách nastavit hodnotu EnableInsecureTlsFallback na hodnotu 1.

  • Změna nastavení: SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\winhttp

  • Nastavení zásad: SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings

Pokud enableInsecureTlsFallback není k dispozici, musíte vytvořit novou položku DWORD a nastavit ji na 1.

Důležité cesty registru

  1. ForceDefaultSecureProtocols  

    • HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\winhttp 

    • Ve výchozím nastavení je false. Nastavením nenulové hodnoty zabráníte aplikacím v nastavování vlastních protokolů pomocí možnosti winhttp.

  2. EnableInsecureTlsFallback 

    • Změna nastavení: SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\winhttp

    • Nastavení zásad: SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings

    • Ve výchozím nastavení je false. Nastavení nenulové hodnoty umožní aplikacím vrátit se k nezabezpečeným protokolům (TLS1.0 a 1.1), pokud metoda handshake selže se zabezpečenými protokoly (tls1.2 a novějším).

Potřebujete další pomoc?

Chcete další možnosti?

Prozkoumejte výhody předplatného, projděte si školicí kurzy, zjistěte, jak zabezpečit své zařízení a mnohem více.

Komunity vám pomohou klást otázky a odpovídat na ně, poskytovat zpětnou vazbu a vyslechnout odborníky s bohatými znalostmi.