के साथ HTTP अनुरोध को प्रतिबंधित किया गया था यह सीम एक आम समस्या है, और मैंने यहां सभी उत्तरों को देखा है लेकिन किसी ने भी मदद नहीं की है।क्लाइंट प्रमाणीकरण योजना 'बेनामी'
मैं आईएसआई पर होस्ट की गई बेसिचपैबिंडिंग और डब्ल्यूसीएफ सेवा के साथ काम करने के लिए एसएसएल प्राप्त करने की कोशिश कर रहा हूं। मुझे लगता है कि समस्या आईआईएस में या प्रमाण पत्र के साथ है। मैंने आईआईएस मैनेजर में एक स्व-हस्ताक्षरित प्रमाणपत्र बनाया है। मेरा प्रमाणपत्र "mycomputer" कहा जाता है और इसे विश्वसनीय रूट प्रमाणीकरण के तहत भी रखा गया है। ग्राहक को प्रमाणपत्र खोजने में कोई समस्या नहीं है।
आईआईएस में मेरी सेटिंग्स अज्ञात ऑथ सक्षम करने और बाकी सब कुछ अक्षम करने के लिए हैं। एसएसएल की आवश्यकता है और क्लाइंट प्रमाण पत्र स्वीकार करें। क्या वो सही है? अगर मैं अनदेखा करना चुनता हूं तो मुझे एक त्रुटि मिलती है।
मैं अपनी कॉन्फ़िगरेशन के साथ कुछ भी गलत नहीं देख सकता, क्या ये सही हैं?
सेवा config:
<system.serviceModel>
<services>
<service behaviorConfiguration="MyBehaviour" name="BasicHttpSecTest.Service1">
<endpoint name="MyEndPoint" address="https://mycomputer/wp/" binding="basicHttpBinding" bindingConfiguration="ClientCertificateTransportSecurity" contract="BasicHttpSecTest.IService1" />
<!--<endpoint address="mex" binding="mexHttpsBinding" contract="IMetadataExchange" />-->
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="MyBehaviour">
<serviceMetadata httpsGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
<serviceCredentials>
<clientCertificate>
<authentication certificateValidationMode="PeerOrChainTrust" revocationMode="NoCheck"/>
</clientCertificate>
</serviceCredentials>
</behavior>
</serviceBehaviors>
</behaviors>
<bindings>
<basicHttpBinding>
<binding name="ClientCertificateTransportSecurity">
<security mode="Transport">
<transport clientCredentialType="Certificate" />
</security>
</binding>
</basicHttpBinding>
</bindings>
</system.serviceModel>
ग्राहक कॉन्फ़िग:
<system.serviceModel>
<client>
<endpoint address="https://mycomputer/wp/Service1.svc" binding="basicHttpBinding"
bindingConfiguration="MyEndPoint" contract="ServiceSSLref.IService1"
name="MyEndPoint1" behaviorConfiguration="ClientCertificateCredential"/>
</client>
<bindings>
<basicHttpBinding>
<binding name="MyEndPoint">
<security mode="Transport">
<transport clientCredentialType="Certificate" />
</security>
</binding>
</basicHttpBinding>
</bindings>
<behaviors>
<endpointBehaviors>
<behavior name="ClientCertificateCredential">
<clientCredentials>
<clientCertificate findValue="mycomputer" storeLocation="LocalMachine" storeName="My" x509FindType="FindByIssuerName" />
<serviceCertificate>
<authentication certificateValidationMode="PeerOrChainTrust" revocationMode="NoCheck"/>
</serviceCertificate>
</clientCredentials>
</behavior>
</endpointBehaviors>
</behaviors>
</system.serviceModel>
धन्यवाद, मुझे लगता है कि उस त्रुटि का समाधान हो सकता है। हालांकि, मुझे मिलता है "रिमोट सर्वर ने एक अप्रत्याशित प्रतिक्रिया वापस कर दी: (405) विधि अनुमत नहीं है।" एक ही चरण में, इसलिए मुझे यकीन नहीं है कि यह बेहतर या खराब – Zeezer
देखें कि क्या आपके अनुबंध इंटरफ़ेस में सार्वजनिक कीवर्ड है या नहीं। और सी को भूलना न भूलें: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319> ServiceModelReg.exe -i – Alex
बहुत बहुत धन्यवाद! इस समस्या के साथ दिनों में बैठे थे। अब इसकी कामकाजी और आखिरी समस्या एक आसान फिक्स था। मेरा पता https: //mycomputer/wp/Service1.svc होना चाहिए, और https: // mycomputer/wp/नहीं होना चाहिए। – Zeezer