Megosztás a következőn keresztül:


A Transport Layer Security (TLS) ajánlott eljárásai a .NET-keretrendszer

Feljegyzés

Ez a lap .NET-keretrendszer TLS-információkat tartalmaz. Ha .NET TLS-információkat keres, tekintse meg a TLS/SSL ajánlott eljárásait

.NET-keretrendszer támogatja a Transport Layer Security (TLS) protokoll használatát a hálózati kommunikáció védelméhez.

Mi az a Transport Layer Security (TLS)?

Figyelmeztetés

A TLS 1.0 és 1.1 elavult a RFC8996. Ez a dokumentum csak a TLS 1.2-et és a TLS 1.3-at ismerteti.

A Transport Layer Security (TLS) protokoll a szabvány iparági legújabb verziója, amely az interneten keresztül kommunikáló információk adatvédelmi védelmének elősegítésére lett kialakítva. A TLS 1.3 egy szabvány, amely biztonsági fejlesztéseket biztosít a korábbi verziókhoz képest. Ez a cikk a TLS protokollt használó .NET-keretrendszer alkalmazások védelmére vonatkozó javaslatokat mutat be.

Ki használhatja ezt a dokumentumot?

TLS-támogatás .NET-keretrendszer

Mivel a .NET-keretrendszer a Windowstól Schannel függ, az operációs rendszertől függ, hogy mely verziók tárgyalhatók le, és melyik verziót fogja használni.

Íme egy frissített példatábla, amely az operációs rendszer különböző verzióinak és .NET-keretrendszer célverzióinak legmagasabb támogatott TLS-verzióját mutatja be:

.NET-keretrendszer célverzió Windows 10 Windows 11
3,5 TLS 1.2 TLS 1.2
4.6.2 TLS 1.2 TLS 1.3
4.7 TLS 1.2 TLS 1.3
4.7.1 TLS 1.2 TLS 1.3
4.7.2 TLS 1.2 TLS 1.3
4.8 TLS 1.2 TLS 1.3
4.8.1 TLS 1.2 TLS 1.3

További információ: TLS protokollverzió támogatása a Schannelben.

Ajánlások

  • TLS 1.3 esetén a cél .NET-keretrendszer 4.8 vagy újabb. Ellenőrizze, hogyan ellenőrizheti a kódszakaszt.target framework
  • Ne adja meg explicit módon a TLS-verziót, azaz ne használja azoknak a metódusoknak a túlterhelését SslStream , amelyek explicit SslProtocols paramétert vesznek igénybe.
    • Így a kód lehetővé teszi, hogy az operációs rendszer döntsön a TLS-verzióról.
    • Ha be kell állítania ServicePointManager.SecurityProtocol, állítsa be a következőre SecurityProtocolType.SystemDefault: . Ez az operációs rendszer alapértelmezett beállítását is használja.
    • Ha az explicit paramétert használó SslProtocols metódust SslStream kell használnia, akkor adja meg SslProtocols.SystemDefault argumentumként. Ez az operációs rendszer alapértelmezett beállítását is használja.
  • Végezzen alapos kódvizsgálatot annak ellenőrzéséhez, hogy nem ad-e meg kifejezetten TLS- vagy SSL-verziót.

Figyelmeztetés

Ne használja SslProtocols.Default, mert a TLS-verziót SSL3-ra és elavult TLS 1.0-ra állítja be.

Ha az alkalmazás lehetővé teszi az operációs rendszer számára a TLS-verzió kiválasztását:

  • Automatikusan kihasználja a jövőben hozzáadott új TLS-protokollokat.
  • Az operációs rendszer blokkolja a nem biztonságosnak talált protokollokat (pl. SSL3 és TLS 1.0).

Ez a cikk bemutatja, hogyan engedélyezheti az alkalmazás által használt és futtatott .NET-keretrendszer verziójához elérhető legerősebb biztonságot. Ha egy alkalmazás kifejezetten beállít egy biztonsági protokollt és -verziót, az minden más alternatívát kizár, és kikapcsolja a .NET-keretrendszer és az operációs rendszer alapértelmezett viselkedését. Ha azt szeretné, hogy az alkalmazás tárgyalni tudjon egy TLS 1.3-kapcsolatról, az alacsonyabb TLS-verzióra való explicit beállítás megakadályozza a TLS 1.3-kapcsolatot.

Ha nem tudja elkerülni a protokollverzió explicit megadását, határozottan javasoljuk, hogy adja meg a TLS 1.2-es vagy a TLS 1.3-at (azaz).currently considered secure A TLS 1.0-függőségek azonosításával és eltávolításával kapcsolatos útmutatásért töltse le a TLS 1.0 probléma megoldásáról szóló tanulmányt.

A WCF a TLS 1.2-t támogatja alapértelmezettként a .NET-keretrendszer 4.7-ben. A 4.7.1-es .NET-keretrendszer kezdve a WCF alapértelmezés szerint az operációs rendszer által konfigurált verzióra lesz beállítva. Ha egy alkalmazás kifejezetten konfigurálva SslProtocols.Nonevan, a WCF az operációs rendszer alapértelmezett beállítását használja a NetTcp-átvitel használatakor.

A dokumentummal kapcsolatos kérdéseket a GitHub transport Layer Security (TLS) ajánlott eljárásaiban teheti fel a .NET-keretrendszer.

Kód naplózása és kódmódosítások végrehajtása

Az ASP.NET alkalmazások esetében vizsgálja meg a <system.web><httpRuntime targetFramework> web.config elemét, és ellenőrizze, hogy a .NET-keretrendszer célként megadott verzióját használja-e.

Windows Forms és egyéb alkalmazások esetén lásd: A .NET-keretrendszer egy verziójának megcélzása.

Az alábbi szakaszokban ellenőrizheti, hogy nem egy adott TLS- vagy SSL-verziót használ-e.

Ha explicit módon kell beállítania egy biztonsági protokollt

Ha explicit módon kell beállítania egy biztonsági protokollt ahelyett, hogy engedélyezi a .NET vagy az operációs rendszer számára a biztonsági protokoll kiválasztását, válassza az alábbi protokollokat:

  • A .NET-keretrendszer 3.5 esetén: TLS 1.2
  • .NET-keretrendszer 4.6.2 vagy újabb verzió esetén: TLS 1.3

Ha nem találja a megadott protokollokat az enumerálásban, bővítményfájlként is hozzáadhatja őket. Lásd alább:

SslProtocolExtensions.cs

namespace System.Security.Authentication
{
    public static class SslProtocolsExtensions
    {
        // For .NET Framework 3.5
        public const SslProtocols Tls12 = (SslProtocols)3072;
        // For .NET Framework 4.6.2 and later
        public const SslProtocols Tls13 = (SslProtocols)12288;
    }
}

SecurityProtocolExtensions.cs

using System.Security.Authentication;

namespace System.Net
{
    public static class SecurityProtocolTypeExtensions
    {
        // For .NET Framework 3.5
        public const SecurityProtocolType Tls12 = (SecurityProtocolType)SslProtocolsExtensions.Tls12;
        // For .NET Framework 4.6.2 and later
        public const SecurityProtocolType Tls13 = (SecurityProtocolType)SslProtocolsExtensions.Tls13;
    }
}

További információ: A TLS rendszer alapértelmezett verzióinak támogatása a Windows 8.1 és Windows Server 2012 R2 .NET-keretrendszer 3.5-ös verziójában.

System.Net API-khoz (HttpClient, SslStream)

Ha az alkalmazás a 4.7-.NET-keretrendszer vagy újabb verziót célozza

Az alábbi szakaszok bemutatják, hogyan konfigurálhatja az alkalmazást a TLS használatára currently considered secure versions . (TLS 1.2, TLS 1.3)

HttpClient és HttpWebRequest esetén

ServicePointManager.NET-keretrendszer 4.7-ben és újabb verziókban az operációs rendszerben konfigurált alapértelmezett biztonsági protokollt fogja használni. Ha lehetséges, ne állítson be értéket a ServicePointManager.SecurityProtocol tulajdonsághoz, amely alapértelmezés szerint SecurityProtocolType.SystemDefaulta következő.

Mivel a SecurityProtocolType.SystemDefault beállítás miatt az ServicePointManager operációs rendszer által konfigurált alapértelmezett biztonsági protokollt használja, előfordulhat, hogy az alkalmazás a futtatott operációs rendszer alapján eltérően fut. A Windows 10 például TLS 1.2-t, míg a Windows 11 TLS 1.3-at használ.

SslStream esetén

SslStreama .NET-keretrendszer 4.7-es és újabb verzióival az operációs rendszer alapértelmezés szerint a legjobb biztonsági protokollt és verziót választja. Ha lehetséges, ne használja az operációs rendszer alapértelmezett túlterheléseit SslStream , ha lehetséges, ne használjon explicit SslProtocols paramétert. Ellenkező esetben adja át a elemet SslProtocols.None. Javasoljuk, hogy ne használja Default; a beállítás SslProtocols.Default kényszeríti az SSL 3.0 /TLS 1.0 használatát, és megakadályozza a TLS 1.2 használatát.

Ne állítson be értéket a SecurityProtocol tulajdonsághoz (HTTP-hálózatkezeléshez).

Ne használja azoknak a metódusoknak a túlterhelését SslStream , amelyek explicit SslProtocols paramétert használnak (a TCP-szoftvercsatornák hálózatkezeléséhez). Amikor újratározza az alkalmazást a 4.7-.NET-keretrendszer vagy újabb verziókra, az ajánlott eljárásokat fogja követni.

WCF-alkalmazásokhoz

Ha az alkalmazás a 4.7-.NET-keretrendszer vagy újabb verziót célozza

Az alábbi szakaszok bemutatják, hogyan konfigurálhatja az alkalmazást a TLS használatára currently considered secure versions . (TLS 1.2, TLS 1.3)

TCP-átvitel használata átviteli biztonsággal a tanúsítvány hitelesítő adataival

A WCF ugyanazt a hálózati vermet használja, mint a többi .NET-keretrendszer.

Ha a 4.7.1-et célozza, a WCF úgy van konfigurálva, hogy az operációs rendszer alapértelmezés szerint a legjobb biztonsági protokollt válassza, kivéve, ha explicit módon van konfigurálva:

  • Az alkalmazáskonfigurációs fájlban.
  • Vagy az alkalmazásban a forráskódban.

Alapértelmezés szerint a .NET-keretrendszer 4.7-s és újabb verziói a TLS 1.2 használatára vannak konfigurálva, és engedélyezik a kapcsolatokat a TLS 1.1 vagy a TLS 1.0 használatával. Konfigurálja a WCF-et, hogy az operációs rendszer a legjobb biztonsági protokollt válassza a kötés használatára SslProtocols.Nonekonfigurálva. Ez be van kapcsolva SslProtocols. SslProtocols.None innen érhető el Transport. NetTcpSecurity.Transport innen érhető el Security.

Ha egyéni kötést használ:

  • Konfigurálja a WCF-et úgy, hogy az operációs rendszer a legjobb biztonsági protokollt válassza a használat SslProtocols.NonebeállításávalSslProtocols.
  • Vagy konfigurálja a konfigurációs útvonallal system.serviceModel/bindings/customBinding/binding/sslStreamSecurity:sslProtocolshasznált protokollt.

Ha nem egyéni kötést használ, és a WCF-kötést konfigurációval állítja be, állítsa be a konfigurációs útvonalhoz system.serviceModel/bindings/netTcpBinding/binding/security/transport:sslProtocolshasznált protokollt.

Az Üzenetbiztonság használata tanúsítvány hitelesítő adataival

.NET-keretrendszer 4.7-s és újabb verziók alapértelmezés szerint a tulajdonságban megadott protokollt SecurityProtocol használják. Az AppContextSwitch Switch.System.ServiceModel.DisableUsingServicePointManagerSecurityProtocols beállításakor truea WCF a legjobb protokollt választja a TLS 1.0-ig.

Ha az alkalmazás 4.7-nél korábbi .NET-keretrendszer-verziót céloz meg

Az alábbi szakaszok bemutatják, hogyan konfigurálhatja az alkalmazást a TLS használatára currently considered secure versions . (TLS 1.2, TLS 1.3)

A 4.6.2-.NET-keretrendszer használata TCP átviteli biztonság használatával tanúsítvány hitelesítő adataival

A WCF-keretrendszer automatikusan kiválasztja a TLS 1.2-ig elérhető legmagasabb protokollt, kivéve, ha kifejezetten konfigurál egy protokollverziót. További információ: A WCF TCP-átvitel átvitele átviteli biztonsággal és tanúsítvány hitelesítő adatokkal.

A 3.5-ös .NET-keretrendszer használata a TCP-átvitel biztonságával tanúsítvány hitelesítő adataival

A WCF-keretrendszer ezen verziói kifejezetten az SSL 3.0 és a TLS 1.0 értékek használatára vannak megadva. Ezek az értékek nem módosíthatók. A TLS 1.2 használatához frissítenie kell a NET Framework 4.6.2-s vagy újabb verzióit, és újra kell újrakontegrálást végeznie.

Biztonság konfigurálása AppContext kapcsolókkal (.NET-keretrendszer 4.6.2-s vagy újabb verziókhoz)

Az ebben a szakaszban ismertetett AppContext-kapcsolók akkor relevánsak, ha az alkalmazás a 4.6.2-es vagy újabb verziót .NET-keretrendszer célozza vagy futtatja. Akár alapértelmezés szerint, akár explicit módon, a kapcsolóknak lehetőség szerint kell lenniük false . Ha egy vagy mindkét kapcsolóval szeretné konfigurálni a biztonságot, ne adjon meg biztonsági protokollértéket a kódban; ezzel felülbírálná a kapcsoló(ok)t.

System.Net API-khoz (HttpClient, SslStream)

A kapcsolók ugyanazt a hatást érik el, függetlenül attól, hogy HTTP-hálózatkezelést (ServicePointManager) vagy TCP-szoftvercsatornákat (SslStream) használ.

Switch.System.Net.DontEnableSchUseStrongCrypto

Ez az false Switch.System.Net.DontEnableSchUseStrongCrypto érték azt eredményezi, hogy az alkalmazás erős titkosítást használ. A biztonságosabb hálózati protokollok (TLS 1.2 és TLS 1.1) és a nem biztonságos protokollok blokkolásának értéke false DontEnableSchUseStrongCrypto . További információ: A SCH_USE_STRONG_CRYPTO jelző. Egy érték letiltja az true alkalmazás erős titkosítását. Ez a kapcsoló csak az alkalmazás ügyfélkapcsolatait (kimenő) érinti.

Ha az alkalmazás .NET-keretrendszer 4.6.2-s vagy újabb verziót céloz meg, ez a kapcsoló alapértelmezés szerint erre váltfalse. Ez egy biztonságos alapértelmezett beállítás, amelyet javasoljuk. Ha az alkalmazás a .NET-keretrendszer 4.6.2-es verzióján fut, de egy korábbi verziót céloz meg, a kapcsoló alapértelmezés szerint a következőre truevált. Ebben az esetben explicit módon állítsa be a következőre false: .

DontEnableSchUseStrongCrypto csak akkor legyen érték true , ha olyan örökölt szolgáltatásokhoz kell csatlakoznia, amelyek nem támogatják az erős titkosítást, és nem frissíthetők.

Switch.System.Net.DontEnableSystemDefaultTlsVersions

Ennek az false Switch.System.Net.DontEnableSystemDefaultTlsVersions az értéke, hogy az alkalmazás lehetővé teszi az operációs rendszer számára a protokoll kiválasztását. Egy érték azt true eredményezi, hogy az alkalmazás a .NET-keretrendszer által kiválasztott protokollokat használja.

Ha az alkalmazás a 4.7-.NET-keretrendszer vagy újabb verziót célozza meg, ez a kapcsoló alapértelmezés szerint erre váltfalse. Ez egy biztonságos alapértelmezett beállítás, amelyet javasoljuk. Ha az alkalmazás .NET-keretrendszer 4.7-es vagy újabb verziókon fut, de egy korábbi verziót céloz meg, a kapcsoló alapértelmezés szerint a következőre truevált. Ebben az esetben explicit módon állítsa be a következőre false: .

WCF-alkalmazásokhoz

Switch.System.ServiceModel.DisableUsingServicePointManagerSecurityProtocols

Ennek értéke false Switch.System.ServiceModel.DisableUsingServicePointManagerSecurityProtocols miatt az alkalmazás a tanúsítvány hitelesítő adataival használja az üzenetbiztonsághoz megadott ServicePointManager.SecurityProtocols értéket. A legmagasabb rendelkezésre álló protokollt használó érték true , legfeljebb TLS1.0

A .NET-keretrendszer 4.7-.NET-keretrendszer és újabb verziót megcélzó alkalmazások esetében ez az érték alapértelmezés szerint a következő.false A 4.6.2-.NET-keretrendszer vagy korábbi verziót megcélzó alkalmazások esetében ez az érték alapértelmezés szerint a következőtrue.

Switch.System.ServiceModel.DontEnableSystemDefaultTlsVersions

Az alapértelmezett konfiguráció értéke false Switch.System.ServiceModel.DontEnableSystemDefaultTlsVersions , amely lehetővé teszi az operációs rendszer számára a protokoll kiválasztását. Egy érték az alapértelmezett értéket a legmagasabb rendelkezésre álló protokollra állítja true , legfeljebb TLS1.2 értékre.

A .NET-keretrendszer 4.7.1-.NET-keretrendszer és újabb verzióit megcélzó alkalmazások esetében ez az érték alapértelmezés szerint a következőfalse. A 4.7-.NET-keretrendszer vagy korábbi verziót célzó alkalmazások esetében ez az érték alapértelmezés szerint a következő.true

A TLS-protokollokkal kapcsolatos további információkért lásd : Kárenyhítés: TLS-protokollok. A kapcsolókkal kapcsolatos AppContext további információkért lásd: <AppContextSwitchOverrides> Element.

Biztonság konfigurálása a Windows-beállításjegyzéken keresztül

Figyelmeztetés

A beállításkulcsok beállítása a rendszer összes alkalmazására hatással van. Ezt a beállítást csak akkor használja, ha teljes mértékben felügyeli a gépet, és szabályozhatja a beállításjegyzék módosításait.

Ha az egyik vagy mindkét AppContext kapcsoló beállítása nem lehetőség, az alkalmazás által használt biztonsági protokollokat az ebben a szakaszban ismertetett Windows beállításkulcsokkal szabályozhatja. Előfordulhat, hogy nem tudja használni az AppContext egyik vagy mindkét kapcsolót, ha az alkalmazás a .NET-keretrendszer 3.5-ös verzión fut, vagy ha nem tudja szerkeszteni a konfigurációs fájlt. Ha a biztonságot a beállításjegyzékkel szeretné konfigurálni, ne adjon meg biztonsági protokollértéket a kódban; Ezzel felülbírálja a beállításjegyzék-beállítást.

A beállításkulcsok neve hasonló a megfelelő AppContext kapcsolók nevéhez, de a DontEnable névhez nem fűzött előtagot. A kapcsoló DontEnableSchUseStrongCrypto például AppContext a SchUseStrongCrypto nevű beállításkulcs.

Ezek a kulcsok minden .NET-keretrendszer verzióban elérhetők.

Az alábbiakban ismertetett összes beállításkulcsnak ugyanaz a hatása, függetlenül attól, hogy HTTP-hálózatkezelést (ServicePointManager) vagy TCP-szoftvercsatornákat (SslStream) használ.

SchUseStrongCrypto

A HKEY_LOCAL_MACHINE\SOFTWARE\[Wow6432Node\]Microsoft\.NETFramework\<VERSION>: SchUseStrongCrypto beállításjegyzék-bejegyzésnek DWORD típusú értéke van. Az 1 érték miatt az alkalmazás erős titkosítást használ. Az erős titkosítás biztonságosabb hálózati protokollokat (TLS 1.2 és TLS 1.1) használ, és blokkolja a nem biztonságos protokollokat. A 0 érték letiltja az erős titkosítást. További információ: The SCH_USE_STRONG_CRYPTO flag. Ez a beállításjegyzék-beállítás csak az alkalmazás ügyfélkapcsolatait (kimenő) érinti.

Ha az alkalmazás .NET-keretrendszer 4.6-os vagy újabb verziót céloz meg, ez a kulcs alapértelmezett értéke 1. Ez egy biztonságos alapértelmezett beállítás, amelyet javasoljuk. Ha az alkalmazás a 4.5.2-.NET-keretrendszer vagy korábbi verziót célozza meg, a kulcs alapértelmezés szerint 0 lesz. Ebben az esetben explicit módon 1 értékre kell állítania az értékét.

Ennek a kulcsnak csak 0 értékűnek kell lennie, ha olyan örökölt szolgáltatásokhoz kell csatlakoznia, amelyek nem támogatják az erős titkosítást, és nem frissíthetők.

SystemDefaultTlsVersions

A HKEY_LOCAL_MACHINE\SOFTWARE\[Wow6432Node\]Microsoft\.NETFramework\<VERSION>: SystemDefaultTlsVersions beállításjegyzék-bejegyzésnek DWORD típusú értéke van. Az 1 érték azt eredményezi, hogy az alkalmazás engedélyezi az operációs rendszer számára a protokoll kiválasztását. A 0 érték miatt az alkalmazás a .NET-keretrendszer által kiválasztott protokollokat használja.

<VERSION>V4.0.30319-nek (4..NET-keretrendszer vagy újabb esetén) vagy 2.0.50727-nek kell lennie (.NET-keretrendszer 3.5 esetén).

Ha az alkalmazás a 4.7-.NET-keretrendszer vagy újabb verziót célozza meg, ez a kulcs alapértelmezés szerint 1 értékű. Ez egy biztonságos alapértelmezett beállítás, amelyet javasoljuk. Ha az alkalmazás a 4.6.1-.NET-keretrendszer vagy korábbi verziót célozza meg, a kulcs alapértelmezés szerint 0 lesz. Ebben az esetben explicit módon 1 értékre kell állítania az értékét.

További információ: Kumulatív frissítés a Windows 10 1511-es és a Windows Server 2016 Technical Preview 4-es verziójához: 2016. május 10.

A .NET-keretrendszer 3.5.1-ről további információt a Windows 7 SP1 és a Server 2008 R2 SP1 .NET-keretrendszer 3.5.1-ben található alapértelmezett TLS-rendszerek támogatása című témakörben talál.

A következő . A REG-fájl a beállításjegyzék bejegyzéseit és változatait a legbiztonságosabb értékekre állítja:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v2.0.50727]
"SystemDefaultTlsVersions"=dword:00000001
"SchUseStrongCrypto"=dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v4.0.30319]
"SystemDefaultTlsVersions"=dword:00000001
"SchUseStrongCrypto"=dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v2.0.50727]
"SystemDefaultTlsVersions"=dword:00000001
"SchUseStrongCrypto"=dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319]
"SystemDefaultTlsVersions"=dword:00000001
"SchUseStrongCrypto"=dword:00000001

Schannel-protokollok konfigurálása a Windows-beállításjegyzékben

A beállításjegyzék használatával részletesen szabályozhatja az ügyfél és/vagy kiszolgálóalkalmazás által egyeztetett protokollokat. Az alkalmazás hálózatkezelése a Schannelen keresztül megy keresztül (ez a Biztonságos csatorna másik neve). Konfigurálásával Schannelkonfigurálhatja az alkalmazás viselkedését.

Kezdje a HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols beállításkulcsgal. A kulcs alatt létrehozhatja a készlet TLS 1.2bármely alkulcsát. TLS 1.3 Mindegyik alkulcs alatt létrehozhat alkulcsokat Client és/vagy Server. Alatta és alatta Client létrehozhat DWORD-értékeket DisabledByDefault (0 vagy 1) és Enabled (0 vagy Server1).

További információ: TLS beállításjegyzék-beállítások – Schannel

A SCH_USE_STRONG_CRYPTO jelző

Ha engedélyezve van (alapértelmezés szerint egy kapcsoló vagy a Windows beállításjegyzéke), .NET-keretrendszer akkor használja a SCH_USE_STRONG_CRYPTO jelölőt, amikor az alkalmazás TLS-kapcsolatot kezdeményez egy kiszolgálóval.AppContext .NET-keretrendszer átadja a jelzőt, hogy Schannel utasítsa, hogy tiltsa le az ismert gyenge titkosítási algoritmusokat, titkosítási csomagokat és TLS/SSL protokollverziókat, amelyek egyébként engedélyezve lehetnek a jobb együttműködés érdekében. További információk:

A SCH_USE_STRONG_CRYPTO jelölőt az ügyfél -(kimenő) kapcsolatokhoz is átadja Schannel a rendszer, ha explicit módon használja a vagy az Tls11 Tls12 enumerált értékeket SecurityProtocolType SslProtocols. A SCH_USE_STRONG_CRYPTO jelző csak olyan kapcsolatokhoz használható, ahol az alkalmazás az ügyfél szerepét tölti be. Letilthatja a gyenge protokollokat és algoritmusokat, ha az alkalmazások a kiszolgáló szerepét töltik be a gépszintű Schannel beállításjegyzék beállításainak konfigurálásával.