2013-01-17 11 views
5

के साथ HTTPS से कनेक्ट है। मेरे पास एक विंडोज स्टोर ऐप (मेट्रो ऐप) है जिसे मैं HTTPS के माध्यम से निर्मित एक वेब सेवा से कनेक्ट करना चाहता हूं। और मैं अपनी वेब सेवा के लिए एक स्व-हस्ताक्षरित प्रमाणपत्र का उपयोग कर रहा हूं। लेकिन जब मैंने इसे अपने ऐप से System.Net.HttpClient.PostAsync के माध्यम से कनेक्ट करने का प्रयास किया तो मुझे एक अपवाद मिलाविंडोज स्टोर ऐप एक स्व-हस्ताक्षरित SSL प्रमाणपत्र

"अंतर्निहित कनेक्शन बंद था: एसएसएल/टीएलएस सुरक्षित चैनल के लिए ट्रस्ट रिलेशनशिप स्थापित नहीं कर सका।"

आंतरिक अपवाद ने कहा "रिमोट प्रमाणपत्र प्रमाणीकरण प्रक्रिया के अनुसार अमान्य है।"

मुझे पता है क्योंकि ऐसा इसलिए है क्योंकि मैं एक स्व-हस्ताक्षरित प्रमाणपत्र का उपयोग कर रहा हूं। मुझे .NET में याद आया। मैं System.Net.ServicePointManager.ServerCertificateValidationCallback का उपयोग कर सकता हूं ताकि थंबप्रिंट मेरा होने पर मेरा एप्लिकेशन सत्यापन को पार कर सके।

लेकिन मुझे विंडोज स्टोर रनटाइम में प्रासंगिक क्लास/विधि नहीं मिल रही है। मैं उसे कैसे कर सकता हूँ?

+0

http://stackoverflow.com/questions/13119649/how-to-trust-a-self-signed-certificate-in-a-windows-store-app – ReinierDG

उत्तर

0

सबसे पहले, आपको आदर्श रूप से Windows.Web.HttpClient का उपयोग करना चाहिए। उस एपीआई पर, आप उन प्रमाणपत्र त्रुटियों को सेट करने के लिए httpClient.HttpBaseProtocolFilter.IgnorableServerCertificateErrors का उपयोग कर सकते हैं जिन्हें आप स्वीकार करना चाहते हैं। आप अविश्वसनीय त्रुटि को अनदेखा करना चुन सकते हैं, उदाहरण के लिए, लेकिन फिर आपको वास्तव में किसी भी डेटा को भेजने से पहले थंबप्रिंट को मैन्युअल रूप से जांचना चाहिए।

+0

का डुप्लिकेट यदि मैं [Microsoft.Net का उपयोग कर रहा हूं तो क्या होगा .Http] (https://www.nuget.org/packages/Microsoft.Net.Http/) पैकेज? – TIKSN

संबंधित मुद्दे