मैं वेबसाइट के उपयोगकर्ताओं को प्रमाणीकृत करने और मेरी एमवीसी वेबसाइट और डब्ल्यूसीएफ सेवाओं के बीच संचार को सुरक्षित करने के लिए नई 4.5 डब्ल्यूआईएफ सामग्री का उपयोग कर रहा हूं।डब्ल्यूआईएफ 4.5 बूटस्ट्रैप कॉन्टेक्स्ट सुरक्षा टोकन शून्य
मेरे पास बूटस्ट्रैप संदर्भ को सहेजने के लिए कॉन्फ़िगर किया गया वेबसाइट है ताकि मैं सेवा परत के सभी अनुरोधों के लिए एक ही सुरक्षा टोकन का पुन: उपयोग कर सकूं।
सामान्य परिस्थितियों में सभी प्रमाणित प्रत्येक वेबसाइट अनुरोध के साथ ठीक काम कर रहे हैं और सुरक्षा टोकन डब्ल्यूसीएफ कॉल को सुरक्षित करने के लिए संदर्भ के माध्यम से उपलब्ध कराया गया है।
यदि वेबसाइट ऐप डोमेन रीसेट हो गया है (उदाहरण के लिए ऐप का निर्माण करते समय ऐप बनाना) अभी भी प्रमाणीकृत होगा लेकिन सुरक्षा टोकन डब्ल्यूसीएफ कॉल पर जाने के संदर्भ में अब उपलब्ध नहीं है।
डिबगिंग BootstrapContext
यह 4 उपयोगी गुण है:
SecurityToken
SecutiryTokenHandler
Token
TokenBytes
पूर्व एप्लिकेशन डोमेन SecurityToken और SecurityTokenHandler मान रीसेट, और बाद टोकन एक मूल्य है रीसेट करें।
रीसेट के बाद टोकन के मूल्य को नजरअंदाज करना ऐसा लगता है कि यह कच्चा SAML एक्सएमएल है, इसलिए मैं संभवतः एक पूर्ण Secutiry टोकन को फिर से बहाल कर सकता हूं लेकिन यह अजीब व्यवहार लगता है कि मुझे कोई दस्तावेज नहीं मिल रहा है।
कोई विचार जो मैं यह सुनिश्चित करने के लिए कर सकता हूं कि सुरक्षा टोकन हमेशा टोकन एक्सएमएल के साथ गड़बड़ाने के लिए उपलब्ध है?
अद्यतन
dotPeek का उपयोग करते हुए देखने के लिए कारण है कि यह इस तरह से होने की जरूरत पर क्या ढांचे स्रोत कोड में चल रहा है मैं निष्पादन पथ है कि इस व्यवहार casues देख सकते हैं, लेकिन मैं किसी भी कारण से निर्धारित नहीं कर सका और यह कैसे किया जा सकता है।
अंत में मैं छोड़ दिया इस पर काम किया और अब कोड का निम्न भाग का उपयोग सुनिश्चित करने के लिए मेरे पास करने की कोशिश कर एक टोकन
if (context.SecurityToken != null)
{
token = context.SecurityToken;
}
else if (context.Token.IsNotEmpty())
{
var handlers = FederatedAuthentication.FederationConfiguration.IdentityConfiguration.SecurityTokenHandlers;
token = handlers.ReadToken(new XmlTextReader(new StringReader(context.Token)));
}
क्या मैं अब के बारे में मैं इस के पीछे कुछ तर्क चूक गए है चिंतित हूँ व्यवहार और ऊपर मेरा फिक्स कुछ बिंदु पर उड़ने जा रहा है।
ओविन एक ही WIF नहीं है? W3wp.exe repro चरणों को मारने के लिए – Kiquenet