मेरे पास एक एएसपीनेट वेब एप्लिकेशन है जो कई डब्ल्यूसीएफ सेवाओं को कॉल करता है। वेब ऐप www.mydomain.com पर स्थित है और सेवाएं services.mydomain.com पर हैं। वे एक ही सर्वर से होस्ट किए जाते हैं।WCF विंडोज प्रमाणीकरण स्पष्ट रूप से क्रेडेंशियल सेट किए बिना काम करता है
<binding name="WindowsSecuredBinding">
<security mode="Transport">
<transport clientCredentialType="Windows" />
</security>
</binding>
और इन नए सुरक्षित अंतिमबिंदुओं उपयोग करने के लिए ग्राहक वेब अनुप्रयोग के लिए कॉन्फ़िगर:
मैं बस सेवाओं है कि परिवहन सुरक्षा (https) और Windows Authenication उपयोग करने के लिए सुरक्षित अंतिमबिंदुओं (bassicHttpBindings) जोड़ दिया है। मैं विंडोज प्रमाणीकरण को पारित करने के लिए क्लाइंट प्रमाण-पत्र सेट करने के लिए अगले चरण को वेब ऐप में कुछ कोड लिखने की उम्मीद कर रहा था। मेरे आश्चर्य के लिए, सेवा कॉल क्लाइंट प्रमाण-पत्र सेट किए बिना सफल हो रही है। मुझे लगता है कि यह उस खाते को भेजना होगा जो वेब ऐप चल रहा है लेकिन उसे सत्यापित करने के बारे में नहीं पता। अन्य परिदृश्यों में मैंने सोचा कि मैंने क्लाइंट प्रमाण-पत्रों को कोई अंतर्निहित डिफ़ॉल्ट नहीं देखा है।
- प्रमाणीकरण कैसे सफलता मिल रही है:
तो मैं दो प्रश्न हैं? क्या यह उपयोगकर्ता को ऐप चलाता है, ब्राउज़र उपयोगकर्ता के प्रमाण-पत्र, कोई प्रमाण-पत्र नहीं?
- मैं प्रमाणीकरण प्रक्रिया को डीबग/लॉग/ट्रेस कैसे कर सकता हूं? मैं कम से कम उस उपयोगकर्ता नाम को देखना चाहता हूं जिसे प्रमाणीकृत किया जा रहा है, इसलिए मैं सुरक्षा को मान्य कर सकता हूं।
विंडो-प्रमाणीकरण [केर्बेरोस] का उपयोग करता है (http://support.microsoft.com/kb/217098) आईआईआरसी। मेरा मानना है कि यह वर्तमान पहचान का उपयोग करता है, लेकिन मुझे यकीन नहीं है कि यह कॉन्फ़िगर करने योग्य है या कैसे सभी छोटे विवरण काम करते हैं। –