जबकि एक वेब सेवा मैं निम्नलिखित त्रुटि मिलती है बुला:HTTP अनुरोध ग्राहक प्रमाणीकरण योजना के साथ अनधिकृत है 'ntlm'
The HTTP request is unauthorized with client authentication scheme 'NTLM'. The authentication header received from the server was 'NTLM'. The HTTP request is unauthorized with client authentication scheme 'NTLM'. The authentication header received from the server was 'NTLM'.
मुझे लगता है कि, एक WCF वेब सेवा कॉल मेरी आईआईएस पर दोनों एक सिल्वरलाइट 4 आवेदन किया है (7)। मेरी WCF वेब सेवा एक और ASMX वेब सेवा, एक अलग वेब सर्वर पर स्थापित है, NTLM (विंडोज प्रमाणीकरण) का उपयोग कर कहता है। दोनों सर्वर, मेरा और एएसएमएक्स वेब सेवा होस्ट करने वाला एक ही डोमेन में है।
जब सिल्वरलाइट क्लाइंट सर्वर http://localhost/MySiteName
सब कुछ ठीक काम करता है का उपयोग करने से आवेदन को खोलता है। लेकिन जब Silverlight ग्राहक एक अलग ग्राहक, जो सर्वर नहीं है, लेकिन अभी भी एक ही डोमेन में, का उपयोग कर http://MyServerName/MySiteName
तो मैं त्रुटि मिलती है से आवेदन को खोलता है।
विंडोज प्रमाणीकरण मेरी IIS में सक्षम है। बेनामी प्रमाणीकरण मेरे आईआईएस में अक्षम है। मेरी WCF वेब सेवा फोन करने के लिए
बाइंडिंग विन्यास है:
<binding name="winAuthBasicHttpBinding">
<security mode="TransportCredentialOnly">
<transport clientCredentialType="Windows" />
</security>
</binding>
ASMX वेब सेवा फोन करने के लिए
बाध्यकारी विन्यास है:
<binding name="ClNtlmBinding">
<security mode="TransportCredentialOnly">
<transport clientCredentialType="Ntlm" />
</security>
</binding>
बाध्यकारी विन्यास मेरी WCF वेब सेवा है : <बाध्यकारी नाम = "winAuthBasicHttpBinding"> <सुरक्षा मोड = "TransportCredentialOnly"> <परिवहन clientCredentialType = "विंडोज" /> ASMX वेब सेवा फोन करने के लिए बाध्यकारी विन्यास है: <बाध्यकारी नाम = "ClNtlmBinding "> <सुरक्षा मोड =" ट्रांसपोर्ट क्रेडेंशियल केवल "> <परिवहन क्लाइंट क्रेडेंशियल टाइप = "एनटीएलएम" /> – kruvi