2011-11-29 10 views
9

मेरे पास एक साइट है जो, डिज़ाइन और क्लाइंट वरीयता द्वारा, HTTP या HTTPS का उपयोग करके सेवा दी जा सकती है। क्लाइंट कंपनी बस http: // या https: // और आईआईएस का उपयोग करके हमारी साइट से लिंक करने के लिए चुनती है या नहीं। एक पृष्ठ में एक सुविधा जोड़ा जा रहा है जो संवेदनशील जानकारी से संबंधित है जिसे केवल एसएसएल पर देखा जाना चाहिए। ग्राहक सहमत हैं कि HTTPS कनेक्शन का उपयोग न करने पर इस अतिरिक्त सुविधा को इस पृष्ठ पर अक्षम किया जाना चाहिए।आप कैसे जांचते हैं कि वर्तमान पृष्ठ ASP.Net में SSL का उपयोग कर रहा है या नहीं?

पेज_लोड ईवेंट में मैं एक आईएफ स्टेटमेंट जोड़ना चाहता हूं जो यह देखने के लिए जांचता है कि इस वैकल्पिक सुविधा को दिखाने या अक्षम करने के लिए पृष्ठ वर्तमान में HTTPS पर देखा जा रहा है या नहीं। मैं शायद यह देखने के लिए यूआरएल पढ़ सकता हूं कि यह https: // से शुरू होता है लेकिन चिंता करें कि दृष्टिकोण असुरक्षित है।

क्या ऐसी कोई संपत्ति है जिसे पृष्ठ_लोड ईवेंट के दौरान HTTPS के परीक्षण के लिए चेक किया जा सकता है?

उत्तर

24

आप Request.IsSecureConnection खोज रहे हैं।

+0

बहुत बहुत धन्यवाद! – David

+0

लेकिन यह भार संतुलन सर्वर पर्यावरण में काम नहीं कर रहा है। कृपया इस पोस्ट को जांचें http://stackoverflow.com/questions/998397/why-does-request-issecureconnection-return-false-when-true-is-expected। हमें एक ही समस्या का सामना करना पड़ता है –

1

यदि आप आईआईएस 7 (या बाद में) का उपयोग कर रहे हैं और एचटीटीपीएस कनेक्शन से HTTP कनेक्शन पर आपके पृष्ठ पर आने वाले अनुरोध को पुनर्निर्देशित करने की योजना बना रहे हैं, तो IIS URL Rewrite Module का उपयोग करने पर विचार करें।

आप इसे कोड के बजाय समाधान कॉन्फ़िगर करने में सक्षम होंगे। उदाहरण के लिए आप http://my.host.com/my-secure-page.aspx जैसे यूआरएल लेने के लिए एक रीडायरेक्ट नियम कॉन्फ़िगर कर सकते हैं और इसे https://my.host.com/my-secure-page.aspx पर रीडायरेक्ट कर सकते हैं।

आप इस मॉड्यूल के साथ बहुत कुछ कर सकते हैं और इसकी सुंदरता यह है कि आप इसे अपने एप्लिकेशन कोड को छूए बिना कर सकते हैं।

अधिक जानकारी के लिए Redirect HTTP to HTTPS with IIS 7 देखें।

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

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