Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Mengendalikan Sijil SSL Tidak Dipercayai dengan HttpClient dalam .NET Standard?

Bagaimana untuk Mengendalikan Sijil SSL Tidak Dipercayai dengan HttpClient dalam .NET Standard?

Linda Hamilton
Linda Hamiltonasal
2025-01-14 15:41:42708semak imbas

How to Handle Untrusted SSL Certificates with HttpClient in .NET Standard?

Mengendalikan sijil SSL yang tidak dipercayai menggunakan HttpClient dalam .NET Standard

Penghantaran data selamat tidak dapat dipisahkan daripada komunikasi SSL. Walau bagaimanapun, menghadapi sijil SSL yang tidak dipercayai boleh menghalang pertukaran maklumat yang berjaya. Artikel ini membincangkan cabaran membenarkan sijil SSL yang tidak dipercayai apabila menggunakan HttpClient dalam perpustakaan .NET Standard.

HttpClient ialah klien HTTP moden dan cekap yang tidak mempunyai mekanisme terbina dalam untuk memintas semakan sijil. Ini boleh mengecewakan apabila berkomunikasi dengan pelayan ujian atau sijil yang ditandatangani sendiri (yang mungkin tidak diiktiraf oleh gedung amanah sistem).

Untuk menyelesaikan masalah ini, anda boleh menggunakan panggilan balik pengesahan tersuai. Panggilan balik ini membolehkan pembangun mengatasi secara manual kelakuan pengesahan SSL lalai dan menerima sijil yang tidak dipercayai. Begini cara melakukannya:

<code class="language-csharp">// 创建自定义 HttpClientHandler
var handler = new HttpClientHandler();

// 指定手动客户端证书处理
handler.ClientCertificateOptions = ClientCertificateOption.Manual;

// 定义 ServerCertificateCustomValidationCallback
handler.ServerCertificateCustomValidationCallback = 
    (httpRequestMessage, cert, cetChain, policyErrors) =>
{
    // 无条件接受证书
    return true;
};

// 使用自定义处理程序初始化新的 HttpClient
var client = new HttpClient(handler);</code>

Dengan menambahkan panggilan balik ini pada HttpClient anda, anda boleh mengendalikan sijil yang tidak dipercayai tanpa menjejaskan langkah berjaga-jaga keselamatan. Ingatlah untuk menimbang potensi risiko yang berkaitan dengan menerima sijil yang tidak dipercayai sebelum melaksanakan penyelesaian ini.

Atas ialah kandungan terperinci Bagaimana untuk Mengendalikan Sijil SSL Tidak Dipercayai dengan HttpClient dalam .NET Standard?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn