Bekerja dengan Sijil Tidak Dipercayai dalam .NET HttpClient
Menggunakan HttpClient
dan HttpClientHandler
untuk mengakses HTTPS API boleh menimbulkan cabaran apabila berurusan dengan sijil yang ditandatangani sendiri atau sebaliknya tidak dipercayai. Tidak seperti WebRequest
, HttpClient
tidak menyokong secara langsung memintas pengesahan sijil dengan cara yang mudah.
Penyelesaian ini menggariskan cara mengendalikan sijil yang tidak dipercayai dalam persekitaran .NET Standard:
<code class="language-csharp">var handler = new HttpClientHandler();</code>
<code class="language-csharp">handler.ClientCertificateOptions = ClientCertificateOption.Manual;</code>
<code class="language-csharp">handler.ServerCertificateCustomValidationCallback = (httpRequestMessage, cert, certChain, policyErrors) => { return true; // Accepts all certificates - use with caution! };</code>
<code class="language-csharp">var client = new HttpClient(handler);</code>
Pertimbangan Keselamatan Penting:
Kaedah ini melumpuhkan pengesahan sijil. Walaupun berguna untuk pembangunan atau ujian, jangan sekali-kali gunakan ini dalam persekitaran pengeluaran. Melangkau pengesahan sijil mendedahkan aplikasi anda kepada risiko keselamatan yang ketara, termasuk serangan man-in-the-middle. Sentiasa utamakan penggunaan sijil yang dipercayai untuk aplikasi pengeluaran bagi mengekalkan keselamatan dan integriti data.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengakses API HTTPS dengan Sijil Tidak Dipercayai Menggunakan HttpClient?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!