Imporre una TLS versione minima in AWS SDK for .NET - AWS SDK for .NET

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Imporre una TLS versione minima in AWS SDK for .NET

Per aumentare la sicurezza durante la comunicazione con AWS i servizi, è necessario configurarli AWS SDK for .NET per utilizzare TLS 1.2 o versioni successive.

AWS SDK for .NET Utilizza il sottostante. NETruntime per determinare quale protocollo di sicurezza utilizzare. Per impostazione predefinita, le versioni correnti di. NETutilizza il protocollo configurato più recente supportato dal sistema operativo. L'applicazione può ignorare questo SDK comportamento, ma non è consigliabile farlo.

. NETNucleo

Per impostazione predefinita,. NETCore utilizza il protocollo configurato più recente supportato dal sistema operativo. AWS SDK for .NET non fornisce un meccanismo per sovrascrivere questo.

Se stai usando un. NETVersione principale precedente alla 2.1, ti consigliamo vivamente di aggiornare la tua. NETVersione principale.

Vedere quanto segue per informazioni specifiche di ciascun sistema operativo.

Windows

Le moderne distribuzioni di Windows hanno il supporto TLS 1.2 abilitato per impostazione predefinita. Se utilizzi Windows 7 SP1 o Windows Server 2008 R2SP1, devi assicurarti che il supporto TLS 1.2 sia abilitato nel registro, come descritto in https://learn.microsoft.com/en-us/tls-registry-settingswindows-server/security/tls/ #tls -12. Se si esegue una distribuzione precedente, è necessario aggiornare il sistema operativo. Per informazioni sul supporto TLS 1.3 in Windows, consulta la documentazione Microsoft più recente per le versioni client o server minime richieste.

macOS

Se stai correndo. NETCore 2.1 o successivo, TLS 1.2 è abilitato per impostazione predefinita. TLS1.2 è supportato da OS X Mavericks 10.9 o versione successiva. . NETLa versione Core 2.1 e successive richiedono versioni più recenti di macOS, come descritto https://learn.microsoft.com/en-us/ in dotnet/core/install/windows? tabs=net80&pivots=os-macos.

Se stai usando. NETCore 1.0,. NETCore utilizza Open SSL su macOS, una dipendenza che deve essere installata separatamente. Open SSL ha aggiunto il supporto per TLS 1.2 nella versione 1.0.1 e ha aggiunto il supporto per TLS 1.3 nella versione 1.1.1.

Linux

. NETCore per Linux richiede OpenSSL, che viene fornito in bundle con molte distribuzioni Linux. ma può anche essere installato separatamente. Open SSL ha aggiunto il supporto per TLS 1.2 nella versione 1.0.1 e ha aggiunto il supporto per TLS 1.3 nella versione 1.1.1. Se stai usando una versione moderna di. NETCore (2.1 o versione successiva) e avete installato un gestore di pacchetti, è probabile che per voi sia SSL stata installata una versione più moderna di Open.

Per essere sicuro, è possibile eseguire openssl version in un terminale e verificare che la versione sia successiva alla 1.0.1.

. NETQuadro

Se utilizzi una versione moderna di. NETFramework (4.7 o versione successiva) e una versione moderna di Windows (almeno Windows 8 per i client, Windows Server 2012 o versione successiva per i server), TLS 1.2 è abilitato e utilizzato per impostazione predefinita.

Se stai usando un. NETRuntime del framework che non utilizza le impostazioni del sistema operativo (. NETFramework da 3.5 a 4.5.2), AWS SDK for .NET cercherà di aggiungere il supporto per TLS 1.1 e TLS 1.2 ai protocolli supportati. Se stai usando. NETFramework 3.5, questa operazione avrà successo solo se viene installata l'hot patch appropriata, come segue:

avvertimento

A partire dal 15 agosto 2024, AWS SDK for .NET terminerà il supporto per. NETFramework 3.5 e cambierà il minimo. NETVersione del framework fino alla 4.7.2. Per ulteriori informazioni, consulta il post sul blog Importanti modifiche in arrivo. NETGli obiettivi del Framework 3.5 e 4.5 di AWS SDK for .NET.

Se l'applicazione è in esecuzione su una versione più recente. NETFramework su Windows 7 SP1 o Windows Server 2008 R2SP1, è necessario assicurarsi che il supporto TLS 1.2 sia abilitato nel registro, come descritto in https://learn.microsoft.com/en-us/tls-registry-settingswindows-server/security/tls/ #tls -12. Le versioni più recenti di Windows lo hanno abilitato per impostazione predefinita.

Per le migliori pratiche dettagliate per l'utilizzo con. TLS NETFramework, vedi l'articolo di Microsoft all'indirizzo https://learn.microsoft.com/en-us/dotnet/framework/network-programming/tls.

AWS Tools for PowerShell

AWS Tools for PowerShellusa AWS SDK for .NET il per AWS tutte le chiamate ai servizi. Il comportamento dell'ambiente dipende dalla versione di Windows PowerShell in esecuzione, come segue.

Da Windows PowerShell 2.0 a 5.x

Funzionano su Windows da PowerShell 2.0 a 5.x. NETFramework. Puoi verificare quali. NETruntime (2.0 o 4.0) viene utilizzato PowerShell utilizzando il seguente comando.

$PSVersionTable.CLRVersion
  • Quando si utilizza. NETRuntime 2.0, segui le istruzioni fornite in precedenza relative a AWS SDK for .NET and. NETFramework 3.5.

    avvertimento

    A partire dal 15 agosto 2024, AWS SDK for .NET terminerà il supporto per. NETFramework 3.5 e cambierà il minimo. NETVersione del framework fino alla 4.7.2. Per ulteriori informazioni, consulta il post sul blog Importanti modifiche in arrivo. NETGli obiettivi del Framework 3.5 e 4.5 di AWS SDK for .NET.

  • Quando si utilizza. NETRuntime 4.0, segui le istruzioni fornite in precedenza relative a AWS SDK for .NET and. NETFramework 4+.

Windows 6.0 PowerShell

Windows PowerShell 6.0 e versioni successive funzionano su. NETNucleo. Puoi verificare quale versione di. NETCore viene utilizzato eseguendo il comando seguente.

[System.Reflection.Assembly]::GetEntryAssembly().GetCustomAttributes([System.Runtime.Versioning.TargetFrameworkAttribute], $true).FrameworkName

Segui le istruzioni fornite in precedenza relative a AWS SDK for .NET e alla versione pertinente di. NETNucleo.

Xamarin

Per Xamarin, consulta le istruzioni su xamarin/cross-platform/app-fundamentals/https://learn.microsoft.com/en-us/. transport-layer-security In sintesi:

Per Android

  • Richiede Android 5.0 o versioni successive.

  • Proprietà del progetto , Opzioni Android: HttpClient l'implementazione deve essere impostata su Android e l'implementazione/impostata su Native 1.2+. SSL TLS TLS

Per iOS

  • Richiede iOS 7 o versioni successive.

  • Project Properties, iOS Build: HttpClient l'implementazione deve essere impostata su NSUrlSession.

Per macOS

  • Richiede macOS 10.9 o versioni successive.

  • Project Options, Build, Mac Build: HttpClient l'implementazione deve essere impostata su NSUrlSession.

Unità

È necessario utilizzare Unity 2018.2 o versione successiva e utilizzare il. NET4.x Runtime di scripting equivalente. È possibile impostarlo in Project Settings, Configuration, Player, come descritto in https://docs.unity3d.com/2019.1/ScriptingRuntimeUpgradeDocumentation/Manual/ .html. Il. NET4.x Il runtime di scripting equivalente consente il supporto TLS 1.2 a tutte le piattaforme Unity che eseguono Mono o. IL2CPP

Browser (per Blazor) WebAssembly

WebAssembly viene eseguito nel browser anziché sul server e utilizza il browser per gestire HTTP il traffico. Pertanto, TLS il supporto è determinato dal supporto del browser.

Blazor WebAssembly, in anteprima per. ASP NETCore 3.1, è supportato solo nei browser che supportano, come descritto in WebAssembly aspnet/core/blazor/supported-platforms. https://learn.microsoft.com/en-us/ Tutti i WebAssembly browser principali TLS supportavano la versione 1.2 prima del supporto. Se questo è il caso del tuo browser, se l'app è in esecuzione, può comunicare tramite TLS 1.2.

Consulta la documentazione del tuo browser per ulteriori informazioni e verifiche.