का उपयोग कर रिमोट सर्वर X509 प्रमाण पत्र सत्यापित करें मैंने ओपनएसएसएल का उपयोग कर एक सीए और एकाधिक प्रमाणपत्र (सीए द्वारा हस्ताक्षरित) उत्पन्न किया है और मेरे पास SslStream
का उपयोग कर एक .NET/C# क्लाइंट और सर्वर है, जिनमें से प्रत्येक के पास अपने स्वयं के प्रमाणपत्र/कुंजी हैं, पारस्परिक प्रमाणीकरण सक्षम है और निरसन अक्षम है।सीए प्रमाणपत्र फ़ाइल
मैं SslStream
के लिए RemoteCertificateValidationCallback
उपयोग कर रहा हूँ रिमोट सर्वर का सुरक्षा प्रमाणपत्र मान्य करने के लिए और मैं मैं सिर्फ कार्यक्रम में सीए के सार्वजनिक प्रमाणपत्र लोड कर सकता है (एक फ़ाइल के रूप में) और नहीं बल्कि उसके बाद वास्तव में स्थापित करने के लिए दूरदराज के प्रमाण पत्र सत्यापित करने के लिए इसका इस्तेमाल करते हैं उम्मीद कर रही थी विंडोज सर्टिफिकेट स्टोर में सीए। समस्या यह है कि X509Chain
कुछ और नहीं दिखाएगा जब तक कि मैं स्टोर में सीए इंस्टॉल नहीं करता, या तो जब मैं प्रमाणपत्रों में से किसी एक का पीईएम संस्करण खोलता हूं तो विंडोज क्रिप्टोएपीआई खोल भी होगा।
मेरे सवाल है, मैं कैसे एक प्रमाण पत्र सत्यापित कर सकते हैं मेरी विशिष्ट द्वारा सीए सिर्फ सीए के सार्वजनिक प्रमाणपत्र फ़ाइल का उपयोग करके विंडोज प्रमाणपत्र संग्रह या WCF का उपयोग करते समय RemoteCertificateValidationCallback
, X509Certificate
और X509Chain
देने के लिए नहीं लग रहे बिना हस्ताक्षर किए गए हैं मुझे काम करने के लिए कुछ भी?
मुझे समझ में नहीं आ रहा है कि विंडोज स्टोर में सीए प्रमाणपत्र क्यों जोड़ना X509Chain को श्रृंखला में दिखाने का कारण बनता है लेकिन यदि मैं नहीं करता कि यह इसका हिस्सा नहीं है। क्या रिमोट सर्टिफिकेट वैलिडेशन कॉलबैक के भीतर श्रृंखला में सीए प्रमाण पत्र जोड़ने के लिए कोई है? – user985122
मुझे अभी भी इसका जवाब नहीं मिल रहा है :( – user985122