मैं इस मुद्दे से निपट रहा था और मैं एक स्वयं-होस्टेड डब्ल्यूसीएफ सेवा का उपयोग कर रहा हूं। मैंने अभी सफलता हासिल की:
मेरे पास मशीन स्टोर के लिए कर्मियों फ़ोल्डर में प्रमाणपत्र था। यह समाप्त हो गया और मेरे प्रबंधक ने एक नया जारी किया। इस त्रुटि के साथ नया मेरे लिए असफल रहा।मैंने Google से बहुत सी चीजों की कोशिश की लेकिन अंत में, एक पूरी तरह से अलग समाधान का उपयोग कर इस मुद्दे को हल किया।
मैंने दोनों प्रमाण पत्र स्थापित किए- एक समाप्त हो गया और नया। तब मैं उनमें से एक सूची प्राप्त करने के लिए इस आदेश का प्रयोग किया:
certutil -store My
मैं इस निर्गम (जानकारी नकली है और अन्य प्रमाण पत्र सूचीबद्ध नहीं हैं) मिलती है:
================ Certificate 1 ================
Serial Number: 6d
Issuer: [email protected], CN=VoiceTrust Server CA, OU=VoiceTrust Oper
ations, O=VoiceTrust
NotBefore: 03-Jan-2013 3:33 PM
NotAfter: 03-Mar-2013 3:33 PM
Subject: [email protected], CN=hornet.voicetrust.com, OU=Software Develop
ment, O=VoiceTrust eServices MENA FZ LLC, L=Dubai, C=AE
Non-root Certificate
Cert Hash(sha1): 98 5f a0 d3 11 6a 4b 64 3b db 0a a4 11 66 fc 08 28 74 7e 53
Key Container = {E5BC0912-7808-4B89-B457-31946DE5990E}
Unique container name: dfedfcc149408fb990a3bacd6d31126b_3277b2c9-9894-46d0-9b6
4-30f0d6589239
Provider = Microsoft Enhanced Cryptographic Provider v1.0
Private key is NOT exportable
Encryption test passed
================ Certificate 2 ================
Serial Number: 6d
Issuer: [email protected], CN=VoiceTrust Server CA, OU=VoiceTrust Oper
ations, O=VoiceTrust
NotBefore: 03-Nov-2013 3:33 PM
NotAfter: 03-Dec-2013 3:33 PM
Subject: [email protected], CN=hornet.voicetrust.com, OU=Software Develop
ment, O=VoiceTrust eServices MENA FZ LLC, L=Dubai, C=AE
Non-root Certificate
Cert Hash(sha1): 30 5f a0 d3 11 6a 4b 64 3b db 0a a4 11 66 fc 08 28 74 7e 53
Key Container = {E5BC0912-7808-4B89-B457-31946DE5960E}
*Unique container name:* 55edfcc149408fb990a3bacd6d31126b_3277b2c9-9894-46d0-9b6
4-30f0d6589239
Provider = Microsoft Enhanced Cryptographic Provider v1.0
Private key is NOT exportable
Encryption test passed
अब, सब कुछ ठीक लगता है, लेकिन प्रमाण पत्र 1 समाप्त हो गई है और काम करता है अगर मैं एक बंदरगाह के लिए बाध्य करने के लिए यह जबकि प्रमाण पत्र 2 त्रुटि 1312.
मुख्य अंतर यह है कि विस्मित कर मुझे अनोखा कंटेनर नाम संपत्ति थी के साथ विफल कोशिश कर रहा है। यह %ProgramData%\Microsoft\Crypto\RSA\MachineKeys\
प्रमाणपत्र 1 के लिए हार्ड ड्राइव पर एक भौतिक कुंजी फ़ाइल का प्रतिनिधित्व करना चाहिए, फ़ाइल वहां थी लेकिन प्रमाणपत्र 2 के लिए, ऐसी कोई फ़ाइल नहीं थी। खोज के बाद मुझे %AppData%\Microsoft\Crypto\
फ़ोल्डर के उप फ़ोल्डर में प्रमाणपत्र 2 के खिलाफ फ़ाइल मिली। यह उपयोगकर्ता विशिष्ट कुंजी नहीं है मशीन स्तर कुंजी। यह आश्चर्यजनक है कि सर्टिफिकेट को कंप्यूटर स्टोर में आयात किया जा रहा है, फिर भी यह हमेशा उपयोगकर्ता की दुकान की कंटेनर कुंजी रखता है।
मैं AppData फ़ोल्डर के अंतर्गत '55edfcc149408fb990a3bacd6d31126b_3277b2c9-9894-46d0-9b64-30f0d6589239' फ़ाइल हटा दी और दुकान पर अपने प्रमाण पत्र 2 के लिए मरम्मत आदेश भागा:
certutil -repairstore My 2
इस बार, अद्वितीय कंटेनर नाम '% ProgramData% \ Microsoft \ Crypto \' के तहत उचित फ़ोल्डर में फ़ाइल को प्रतिबिंबित कर रहा था और सब कुछ काम करना शुरू कर दिया।
आशा है कि यह किसी के लिए सहायक होगा।
आप दोनों मूल प्रमाणपत्र और आत्म पर हस्ताक्षर किए प्रमाणपत्र आयात करने के लिए किया है। फिर यह काम कर रहा है, –
यदि कोई और इस समस्या में चलता है और यहां के उत्तरों स्पष्ट रूप से इसका उत्तर नहीं देते हैं, अंतर्निहित मूल समस्या निजी कुंजी आयात करने की आवश्यकता है। यदि आप आयात करते समय प्रमाण पत्र को निर्यात करने योग्य नहीं करते हैं, तो निजी कुंजी आयात नहीं होती है और आप इसे बाध्य नहीं कर सकते हैं। यदि आप इसे हटाते हैं और इसे फिर से आयात करते हैं और इसे निर्यात करने योग्य के रूप में चिह्नित करते हैं, तो यह काम करेगा। –