का उपयोग करते समय खाली है मैं वर्तमान में ट्रांसपोर्टविथमेसेज क्रेडेंशियल्स और https को अपने डब्ल्यूसीएफ प्रोजेक्ट पर उपयोग करने का प्रयास कर रहा हूं। मैंने क्लाइंट और सर्वर सुरक्षा मोड = "TransportWithMessageCredential" और क्लाइंट क्रेडिट्रेड टाइप = "विंडोज" दोनों सेट किए हैं।CredentialCache.DefaultNetworkCredentials TransportWithMessageCredential
जब मैं CredentialCache.DefaultNetworkCredentials से प्रमाण-पत्र प्राप्त करने के लिए जाता हूं, तो उपयोगकर्ता नाम, पासवर्ड और डोमेन सभी खाली होते हैं।
कोई कारण यह खाली क्यों होगा? अगर वे हमेशा खाली रहेंगे, तो मुझे पास करने के लिए प्रमाण पत्र कहां मिलेगा?
मैं लॉगिन के लिए उन्हें संकेत दिए बिना सेवा में लॉग इन उपयोगकर्ता प्रमाण-पत्र कैसे पास करूं?
ग्राहक बाध्यकारी
<basicHttpBinding>
<binding name="ClientHttpEndpoint" closeTimeout="00:01:00"
openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:02:00"
allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
maxBufferSize="4194304" maxBufferPoolSize="524288" maxReceivedMessageSize="4194304"
messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
useDefaultWebProxy="true">
<security mode="TransportWithMessageCredential">
<transport clientCredentialType="Windows" proxyCredentialType="None" realm="" />
<message clientCredentialType="UserName" algorithmSuite="Default" />
</security>
</binding>
</basicHttpBinding>
बाध्यकारी
<basicHttpBinding>
<binding name="WindowsTransportCredentialBinding" maxBufferSize="524288"maxReceivedMessageSize="524288">
<readerQuotas maxDepth="128" maxStringContentLength="1048576" />
<security mode="TransportWithMessageCredential">
<transport clientCredentialType="Windows" />
</security>
</binding>
</basicHttpBinding>
...
<service name="Test.DiagnosticService">
<endpoint binding="basicHttpBinding" bindingConfiguration="WindowsTransportCredentialBinding" name="ClientDiagnosticEndpoint" contract="Test.IDiagnostic" />
</service>
कोड यूज़रनेम और पासवर्ड
ChannelFactory<IDiagnostic> test = new ChannelFactory<IDiagnostic>(DIAGNOSTIC_ENDPOINT_NAME);
test.Credentials.UserName.UserName = "TestUser";
test.Credentials.UserName.Password = "User";
return test.CreateChannel();
आप कैसे सेवा करने के लिए Windows में लॉग इन वर्तमान उपयोगकर्ता पारित करने के लिए पूछ रहे हैं? – Jeremy
हां। मैं वर्तमान में लॉग इन उपयोगकर्ता प्रमाण-पत्र (विंडोज़) को सेवा में पास करना चाहता हूं। (मैंने मूल पोस्ट संपादित किया) – user851974
आईआईएस में होस्ट की गई सेवा है? या स्वयं होस्ट किया गया – EdmundYeung99