2010-05-26 24 views
8

क्या कोई मुझे बता सकता है, यदि दोनों एक दूसरे के साथ हस्तक्षेप किए बिना मेरी साइट पर बुनियादी और फॉर्म प्रमाणीकरण दोनों का उपयोग करना संभव है?उसी साइट पर मूल प्रमाणीकरण और प्रपत्र प्रमाणीकरण का उपयोग

मेरे पास एक नई साइट है जिसे मैं केवल कुछ लोगों को अनुमोदन उद्देश्यों के लिए देखना चाहता हूं।

साइट पर एक सदस्य क्षेत्र है जो फॉर्म प्रमाणीकरण का उपयोग करता है और अब जब कोई मूल प्रमाणीकरण पारित करने के बाद साइट में प्रवेश करता है तो उन्हें फॉर्म प्रमाणीकरण पृष्ठ पर निर्देशित किया जा रहा है, भले ही उन्हें ऐसे पृष्ठ को देखना चाहिए जो फ़ॉर्म द्वारा संरक्षित नहीं है प्रमाणीकरण।

मुझे ऐसी स्थिति की आवश्यकता है जिससे कोई भी मूल प्रमाणीकरण को साफ़ कर सके, फिर साइट के सदस्यों के क्षेत्र को छोड़कर पूरी साइट को देख सकें जहां उन्हें फॉर्म प्रमाणीकरण के माध्यम से लॉग इन करने की आवश्यकता होगी।

+0

बनाया है, अभी आपका प्रमाणीकरण कैसे स्थापित किया गया है? – MarioDS

+0

कृपया अपने प्रमाणीकरण/प्रमाणीकरण को कॉन्फ़िगर करने के तरीके के बारे में कुछ विवरण (कोड या छद्म कोड) पोस्ट करें। यदि आपको गलत स्थान पर रीडायरेक्ट किया जा रहा है तो यह प्रमाणीकरण समस्या की तुलना में * प्राधिकरण * समस्या की तरह लगता है। क्या आप 'AuthorizeAttribute' का उपयोग कर रहे हैं? क्या आप 'AllowAnonymousAttribute' का उपयोग कर रहे हैं? देखें [न्यूनतम, पूर्ण और सत्यापन योग्य उदाहरण कैसे बनाएं] (http://stackoverflow.com/help/mcve)। – NightOwl888

+0

मैंने प्रश्न अपडेट किया है। 'प्रमाणीकरण] विशेषता का उपयोग फॉर्म प्रमाणीकरण के उद्देश्य से किया जा रहा है और काम कर रहा है। हालांकि, पूरी साइट को मूल प्रमाणीकरण से संरक्षित करने की आवश्यकता है। अर्थात। जब कोई उपयोगकर्ता साइट तक पहुंचने का प्रयास करता है, तो उन्हें ब्राउज़र लॉगिन संवाद से संकेत मिलता है। इसे साफ़ करने के बाद, उपयोगकर्ता को '[प्राधिकरण]' विशेषताओं के साथ विधियों/नियंत्रकों को छोड़कर पूरी साइट को देखने में सक्षम होना चाहिए (जहां साइट के इन हिस्सों तक पहुंच के लिए प्रपत्र प्रमाणीकरण आवश्यक है) – cnorthfield

उत्तर

2

ऐसा लगता है कि आपने केवल विशेष सदस्यों के क्षेत्र के लिए फॉर्म प्रमाणीकरण कॉन्फ़िगर नहीं किया है, लेकिन यह सबकुछ के लिए कॉन्फ़िगर किया गया है।

the authorization element और the location element पर देखें (यदि आप सदस्य के क्षेत्र के लिए Web.config बनाने के बजाय मुख्य वेब.कॉन्फिग में सेटिंग्स को नियंत्रित करना चाहते हैं)।

यह भी देखें ASP.NET Forms Authentication and a "No Authentication" subfolder (सिवाय इसके कि आप रिवर्स चाहते हैं)।

1

एक विकल्प है अपनी खुद की मूल प्रमाणीकरण फ़िल्टर विशेषता लिखना और उस क्रिया की रक्षा करना जिसके लिए केवल कस्टम विशेषता के साथ मूल प्रमाणीकरण की आवश्यकता है। नियंत्रक कार्रवाई जिसके लिए फॉर्म प्रमाणीकरण की आवश्यकता होती है उसे सामान्य [प्राधिकृत] विशेषता से संरक्षित किया जाना चाहिए। निम्न उदाहरण देखें: -

http://www.ryadel.com/en/http-basic-authentication-asp-net-mvc-using-custom-actionfilter/

मैंने पहले भी इसी तरह की एक मुद्दा था, लेकिन बाकी कॉल और प्रपत्र प्रमाणीकरण जब कोई MVC साइट पर पहुँच के लिए बुनियादी प्रमाणीकरण प्रदान की तर्ज पर अधिक था। हमने अपना खुद का प्रमाणीकरण फ़िल्टर

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