ASPXAUTH कुकी क्या है?


80

ASP.Net प्रपत्र प्रमाणीकरण के साथ काम करते समय मैं .ASPXAUTH कुकी पर आया। मेरे कुछ सवाल हैं:

  • इस कुकी का उद्देश्य क्या है?
  • इस कुकी का स्थान क्या है?

जवाबों:


85

ASPXAUTH कुकी का उपयोग यह निर्धारित करने के लिए किया जाता है कि उपयोगकर्ता प्रमाणित है या नहीं।

जहां तक ​​कुकी का स्थान है, जो आपके ब्राउज़र पर निर्भर करता है। यदि आप फ़ायरफ़ॉक्स का उपयोग कर रहे हैं, तो आप टूल्स -> विकल्प -> गोपनीयता पर क्लिक करके कुकी देख सकते हैं। फिर डोमेन पर स्क्रॉल करें और कुकी और उसके मूल्य को देखने के लिए इसे विस्तारित करें। मान को मशीन कुंजी (सर्वर की मशीन में स्थित है ।config या web.config फ़ाइल) का उपयोग करके एन्क्रिप्ट किया गया है, इसलिए क्लाइंट पर कुकी को देखना वास्तव में आपको कोई जानकारी प्रदान नहीं करेगा। आप का उपयोग कर सर्वर साइड पर मूल्य को डिक्रिप्ट / देख सकते हैं:

HttpCookie authCookie = Request.Cookies[FormsAuthentication.FormsCookieName];//.ASPXAUTH
FormsAuthenticationTicket authTicket = FormsAuthentication.Decrypt(authCookie.Value);

authTicketइन क्षेत्रों में कहां है:

यहाँ छवि विवरण दर्ज करें

"ASP.NETA सत्र राज्य को बनाए रखने के लिए मूल रूप से ASPXAUTH" कथन गलत है। ASP.NET, सत्र स्थिति को ट्रैक करने के लिए ASP.NET_SessionId नामक एक पूरी तरह से अलग कुकी जारी करता है।


2
फ़ायरफ़ॉक्स v8.0 पर कुकीज़ निम्नानुसार पाई जा सकती हैं: उपकरण -> पृष्ठ जानकारी -> सुरक्षा -> कुकीज़ देखें
एंथनी

उसी सुरक्षा टैब में "View Saved Passwords" बटन होता है और मेरे आश्चर्य की बात है कि मैं सभी पासवर्ड को विभिन्न वेबसाइटों के लिए सादे पाठ के रूप में देख पा रहा था, जिन्हें मैं फ़ायरफ़ॉक्स का उपयोग करके ब्राउज़ कर रहा था। हालांकि ब्राउज़र को डिस्क पर एन्कोडेड प्रारूप में संग्रहीत करना चाहिए और यह सिर्फ डिकोडिंग करके आपके संदर्भ के लिए दिखाता है लेकिन यह विकल्प वास्तव में एक सुरक्षा खतरा है जितना मैं सोच सकता हूं। यदि कोई हैकर उसी एल्गोरिथम को नियोजित कर सकता है और जावास्क्रिप्ट का उपयोग करके उन कुकीज़ को पढ़ सकता है, हालांकि उस एल्गोरिथ्म का रिसाव एक दूर की संभावना है क्योंकि इसमें कुछ कुंजी शामिल हो सकती है जो केवल ब्राउज़र कोड के लिए जानी जाती है।
RBT

Http अनुरोध के कुकी संग्रह में asp.net सत्र आईडी संग्रहीत करने के लिए उपयोग की जाने वाली कुंजी का नाम प्राप्त करने के लिए यहाँ C # कोड है: var aspNetSessionState = new System.Web.Configuration.SessionStateSection (); var aspNetSessionCookieName = aspNetSessionState.CookieName;
RBT

में Request.IsAuthenticated सच लेकिन है .ASPXAUTH मेरी HttpContext.Current.Request.Cookies में नहीं मूल्य। मैं sessionState का उपयोग करता हूं। Application_PostAuthenticateRequest
किकेनेट

1
मैंने एमवीसी प्रोजेक्ट बनाया, इसे चलाया। खाता पंजीकृत करें और फिर लॉगिन करें। और क्रोम देव उपकरण में कुकीज़ का निरीक्षण करें एक Aspnet.ApplicationCookie था। और फिर लॉगिन एक्शन में एक पंक्ति जोड़ दी: FormsAuthentication.SetAuthCookie (model.Email, true); और फिर से लॉगिन करें और क्रोम देव उपकरण में कुकीज़ का निरीक्षण किया इस बार जाहिर है कि यह ASPXAuth था। तो दोनों में क्या अंतर है?

10

वास्तव में .ASPXAUTH कुकी उपयोगकर्ता के सही रूप से प्रमाणित होने पर आपको सही-सही नहीं बताती है। जब उपयोगकर्ता ऐप से लॉग आउट करता है, तो .ASPXAUTH कुकी ब्राउज़र से हटा दी जाती है। हालाँकि, यदि आप थोड़े समय के भीतर साइट पर वापस जाते हैं (फॉर्म ऑउटफिट कुकी के टाइमआउट के साथ), और नए ASP.NET_SessionId कुकी को निम्न के साथ संपादित करें:

  • "ASP.NET_SessionId" से ".ASPXAUTH" में "नाम" फ़ील्ड बदलें
  • 24 char sessionID से पुराने 448 char प्रमाणीकरण स्ट्रिंग में "मान" बदलें

ताज़ा करने के बाद आप तकनीकी रूप से फिर से प्रमाणित किए बिना प्रमाणीकृत उपयोगकर्ता की पहचान करने में सक्षम होंगे। (फिर से मान लें कि आप इसे विशिष्ट समयसीमा के भीतर संग्रहीत करते हैं। .ASPXAUTH एन्क्रिप्टेड ऑर्टिकल स्ट्रिंग)

एक अच्छा ब्लॉग पोस्ट समस्या को और अधिक विस्तार से बताता है। एक संभावित समाधान एएसपी सत्र के साथ .ASPXAUTH को युगल करना है।


0

यदि HTML लॉगिन URL के साथ उपयोगकर्ता के इंटरैक्शन ने TSWPPserver को उपयोगकर्ता की पहचान स्थापित करने की अनुमति दी है, तो दूरस्थ सर्वर SHOULD एक कुकी उत्पन्न करता है जो उपयोगकर्ता की पहचान करता है और सर्वर को प्रमाणीकरण की अनुमति देता है। कुकी की सामग्री को हस्ताक्षरित और एन्क्रिप्ट किया जाना चाहिए। हस्ताक्षर और एन्क्रिप्शन एल्गोरिदम सहित इस कुकी का विशिष्ट कार्यान्वयन TSWPP सर्वर के कार्यान्वयन पर निर्भर है, क्योंकि कुकी की सामग्री को पार्स करने के लिए केवल सर्वर की आवश्यकता होती है। यदि सर्वर कुकी को कार्यान्वित करता है, तो कुकी MUST को एक HTTP-पेलोड में "एप्लिकेशन / x-msts-webfeed-login" सामग्री-प्रकार के साथ लौटाया जाना चाहिए।

http://msdn.microsoft.com/en-us/library/ee920427.aspx

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.