2012-08-23 29 views
5

से पास प्रमाण पत्र पास करें मेरे पास एक ही मशीन पर आईआईएस पर होस्ट की गई 2 डब्ल्यूसीएफ सेवाएं हैं। सेवा ए को क्लाइंट द्वारा बुलाया जाता है और परिवहन सुरक्षा और NTLM credentialtype के साथ BasicHttpBinding का उपयोग करता है। सेवा ए को सेवा बी को कॉल करने की आवश्यकता है जिसे आईआईएस पर भी होस्ट किया जाता है लेकिन परिवहन सुरक्षा और NTLM credentialtype के साथ WsHttpBinding का उपयोग करता है।एक डब्ल्यूसीएफ सेवा से दूसरे डब्ल्यूसीएफ सेवा

आईआईएस एकीकृत विंडोज प्रमाणीकरण का उपयोग करने के लिए कॉन्फ़िगर किया गया है।

पहला प्रयास मैं एक 403 निषिद्ध संदेश मिला:

System.ServiceModel.Security.MessageSecurityException : The HTTP request was forbidden with client authentication scheme 'Ntlm'. 
System.Net.WebException: The remote server returned an error: (403) Forbidden. 

क्योंकि जब मैंने सेवा बी को सेवा एक से एक फोन अनुप्रयोग पूल की पहचान बनाने के लिए किया जाता है यह सामान्य है।

मेरे दूसरे प्रयास में मैंने सेवा बी पर कॉल का प्रतिरूपण करने की कोशिश की लेकिन समस्या यह है कि ऑपरेशन में सभी कोड कॉलर्स खाते के तहत निष्पादित किया जाता है। इस खाते में सर्वर पर कोई एसीएल अनुमति नहीं है और इन अनुमतियों को प्रदान करना एक विकल्प नहीं है। निम्न त्रुटि लॉग होता है:

System.IO.FileLoadException : Could not load file or assembly 'System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies. The handle is invalid. (Exception from HRESULT: 0x80070006 (E_HANDLE)) 

मैं कैसे सुरक्षा एसीएल के या अनुप्रयोग पूल पहचान को परिवर्तित किए बिना इस का समाधान कर सकता है?

उत्तर