Cara mengaktifkan TLS 1.2 di Asp.Net Core 3.1
Saya sedang mengerjakan proyek Asp.Net Core 3.1. Saya menguji secara lokal. Saya mulai mendapatkan kesalahan sebagai
Koneksi Anda tidak sepenuhnya aman Situs ini menggunakan konfigurasi keamanan yang sudah ketinggalan zaman, yang dapat mengekspos informasi Anda (misalnya, kata sandi, pesan atau kartu kredit) ketika dikirim ke situs ini. NET :: ERR_SSL_OBSOLETE_VERSION
Sambungan yang digunakan untuk memuat situs ini menggunakan TLS 1.0 atau TLS 1.1, yang tidak digunakan lagi dan akan dinonaktifkan di masa mendatang. Setelah dinonaktifkan, pengguna tidak akan dapat memuat situs ini. Server harus mengaktifkan TLS 1.2 atau yang lebih baru.

Saya bahkan telah mengaktifkan TLS 1.2 dari Program.cs seperti di bawah ini -
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.ConfigureKestrel(serverOptions =>
{
serverOptions.ConfigureHttpsDefaults(co =>
{
co.SslProtocols = SslProtocols.Tls12;
});
}).UseStartup<Startup>();
});
Tapi tetap saja errornya sama.
Bisakah Anda memandu cara mengatasi masalah ini?
Jawaban
Untuk memperbaiki kesalahan, saya mencoba solusinya . Itu tidak membantu. Metode yang saya coba disarankan di sini yang, menurut penulis, tampaknya hanya berfungsi untuk ASP.NET Core 2.0.
Saya melihat opsi konfigurasi dan menemukan bahwa secara default ASP.NET Core 3.1 menggunakan TLS 1.1 dan TLS 1.2 untuk permintaan. Jadi, kita tidak perlu melakukan apa pun dari akhir kode.

Akhirnya, saya menemukan artikel yang membagikan-
Windows 7 mendukung TLS 1.1 dan TLS 1.2. Tapi versi protokol ini tidak diaktifkan secara default. Di Windows 8 dan lebih tinggi, protokol ini diaktifkan secara default.
Jadi, inilah penyebab sebenarnya dari kesalahan tersebut. Saya memperbaiki masalah ini dengan mengaktifkan TLS 1.2 dari editor registri. Bahkan Microsoft menyarankan solusi yang sama .
Semoga bisa menghemat waktu orang lain.
Tolong lari
dotnet dev-certs https --trust
Program Anda # CreateHostBuilder akan terlihat seperti ini (default)
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
});