WinRT

2012-08-14 14 views
8

का उपयोग कर अमान्य SSL प्रमाणपत्रों को स्वीकार करना ऐसे परिदृश्य हैं जहां आप अपना एप्लिकेशन अमान्य SSL प्रमाणपत्र (परीक्षण पर्यावरण/स्वयं हस्ताक्षरित प्रमाणपत्र आदि) स्वीकार करना चाहते हैं।WinRT

.NET दुनिया में कोई ऐसा करने के लिए ServerCertificateValidationCallback कक्षा का उपयोग करेगा। दुर्भाग्यवश कक्षा WinRT संदर्भ में मौजूद नहीं है।

मुझे WinRT का उपयोग करके एक वेब एपीआई का उपभोग करने की आवश्यकता है जो एक वैध एसएसएल प्रमाणपत्र के बिना सर्वर पर होस्ट किया गया है।

HttpClient कक्षा या किसी अन्य उपयुक्त वर्ग का उपयोग करके आप WinRT में अमान्य एसएसएल प्रमाणपत्र कैसे स्वीकार करते हैं।

कोई भी मदद या विकल्प बहुत सराहना की जाएगी।

+1

वैकल्पिक रूप से, आप तो वे के रूप में मान्य देखा जाता है अपने स्थानीय प्रमाणपत्र संग्रह करने के लिए अपने आप पर हस्ताक्षर किए परीक्षण प्रमाण पत्र जोड़ सकते हैं। – Wug

+0

मैं उस बारे में भी सोच रहा था और सैद्धांतिक रूप से यह काम करना चाहिए, लेकिन: मैं जिस डिवाइस का उपयोग कर रहा हूं वह हार्डवेयर की एक शांति है जिसे आप खरीद सकते हैं और सामान्य उपयोगकर्ताओं को यह समझाने के लिए जटिल है कि मशीन में एसएसएच कैसे करें, ग्रैप टी प्रमाणपत्र और इतने पर और इतने पर। या यह स्वचालित करने का कोई तरीका होगा? – Flo

+0

ऑपरेटिंग सिस्टम पर निर्भर करता है। आप विभिन्न ऑपरेटिंग सिस्टम के लिए स्थापना निर्देशों के साथ विभिन्न प्रारूपों में प्रमाण पत्र की आपूर्ति कर सकते हैं (उनमें से अधिकतर, यह मूल रूप से "इसे डाउनलोड करें और इसे डबल क्लिक करें")। यदि आप किसी कंपनी के साथ काम कर रहे हैं, तो आप अपने आईटी डिप्टी के माध्यम से अनुरोध कर सकते हैं और वे शायद अपने कर्मचारियों की मशीनों पर इंस्टॉलेशन कर सकते हैं – Wug

उत्तर

-1

चांदी की रोशनी में, इसकी अनुमति नहीं थी। मैंने कुछ भी नहीं देखा है जो कहता है कि इसे Winrt में अनुमति है।

+0

यह इंगित करता है कि आप यह नहीं कर सकते: http://social.msdn.microsoft.com/Forums/en-US/winappswithcsharp/thread/4a776e8c-0e10-4f03-908f-7f765d914080 - बस एक और मामला जिसमें एमएस कहता है नहीं और सेब कहता है "हाँ यकीन है- हम डेवलपर्स से प्यार करते हैं!" – dethSwatch

+0

मुझे लगता है कि अब मेरे पास कोई अन्य विकल्प नहीं है लेकिन आपका जवाब स्वीकार करें। आइए उम्मीद करते हैं कि वे भविष्य में इसके बारे में कुछ बदल देंगे! उत्तर के नीचे – Flo

+0

काम कर रहा है :-) –

3

निम्नलिखित कोड डिबगिंग परिदृश्य के लिए मेरे लिए काम किया:

var filter = new HttpBaseProtocolFilter(); 
#if DEBUG 
    filter.IgnorableServerCertificateErrors.Add(ChainValidationResult.Expired); 
    filter.IgnorableServerCertificateErrors.Add(ChainValidationResult.Untrusted); 
    filter.IgnorableServerCertificateErrors.Add(ChainValidationResult.InvalidName); 
#endif 
using (var httpClient = new HttpClient(filter)) { 
    ... 
} 
+0

क्या आप वेबव्यू के साथ ऐसा करने का तरीका समझेंगे? – xMythicx

+0

वेबव्यू के साथ समाधान के लिए कोई विचार नहीं। मूल प्रश्न वेबव्यू के बारे में नहीं है। यह प्रश्न उपयोगी क्यों नहीं है? –

+1

धन्यवाद Dschüsä, जिसने मेरे विंडोज 10 ऐप के लिए बहुत मदद की! –

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