2012-03-21 16 views
8

से CurrentUser प्रमाणपत्र नहीं पढ़ सकते हैं मैं एएसपी.NET 4.0 वेब अनुप्रयोग विकसित कर रहा हूं, और मैं X509Store से वर्तमान उपयोगकर्ता प्रमाणपत्र पढ़ना चाहता हूं। LocalMachine प्रमाण पत्र पढ़ना ठीक काम करता है, लेकिन अगर मैं StoreLocation को CurrentUser पर सेट करता हूं, तो यह मुझे एक खाली संग्रह देता है।X509Store

निम्नलिखित कोड ठीक काम करता है:

X509Store store = new X509Store(StoreName.My, StoreLocation.LocalMachine); // StoreLocation.CurrentUser 
store.Open(OpenFlags.ReadOnly | OpenFlags.OpenExistingOnly); 

मैं अपने निजी दुकान (certmgr.mmc के माध्यम से) जांच की है और मुझे यकीन है कि मैं प्रमाणपत्र मिला है, कर रहा हूँ।

मुझे क्या याद आ रही है? (स्टोर। प्रमाणपत्र खाली है)

+0

के रूप में चल रहा है क्या एप्लिकेशन आपके जैसा चल रहा है? –

+0

आवेदन मेरे स्थानीय आईआईएस (7.5) पर होस्ट किया गया है। एप्लिकेशन पूल ApplicationPoolIdentity पर सेट है। –

+1

... तो CurrentUser एप्लिकेशन पूल होगा, न कि आप। –

उत्तर

2

ऐसा प्रतीत होता है कि आप वेब एप्लिकेशन के माध्यम से व्यक्तिगत प्रमाणपत्र स्टोर तक नहीं पहुंच सकते हैं, भले ही आप किस एप्लिकेशन पूल पहचान का उपयोग कर रहे हों।

यह समझ में आता है कि किसी वेब एप्लिकेशन के पास उस स्थान तक पहुंच नहीं है। :)

मेरे समाधान:

मैं एक एक्टिव एक्स नियंत्रण जो मैं स्टोर को एक्सेस करने के लिए अपने एक ही रास्ता लगता है विकसित किया है। (इसके अलावा, एक जावा ऐप्पल एक ही कार्यक्षमता प्रदान करता है)। मैं स्टोर तक पहुंचने के लिए जावास्क्रिप्ट के माध्यम से ActiveX नियंत्रण का उपयोग करता हूं, और उस जानकारी को सर्वर पर भेजता हूं।

0

यदि आपकी कार्यकर्ता प्रक्रिया प्रमाणपत्र स्टोर तक नहीं पहुंच पाती है, तो शायद यह खाता सेटअप समस्या है। आईआईएस कॉन्फ़िगरेशन में जाने का प्रयास करें, एप्लिकेशनपूल खोलें, राइट क्लिक करें, एडवांस्ड का चयन करें और लोडयूसरप्रोफाइल को TRUE पर सेट करने का प्रयास करें। और पूल को पुनरारंभ करें। यह मेरे लिए कार्यकर्ता - निजी कुंजी के साथ .PFX लोड करते समय कोई और अपवाद नहीं।

0

मुझे एक ही समस्या थी। समाधान था:

आईआईएस व्यवस्थापक -> [आपके वर्चुअल डीआईआर] -> प्रमाणीकरण-> अनाम प्रमाणीकरण (फिर चुनें "संपादित करें ..." पर क्लिक करें) और इसे "एप्लिकेशन पूल पहचान" का उपयोग करने के लिए बदलें।

अन्यथा यह सामान्य "आईयूएसआर"

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

  • कोई संबंधित समस्या नहीं^_^