2016-04-21 116 views
7

Birkaç MSDN makalesini izledikten sonra, WCF hizmetim için çalışan istemci sertifikaları ve kullanıcı adı parolalarım vardı. Müşteri, hizmetime erişmek için bir sertifika ve kullanıcı adı ve parola gerektirdi.WCF İstemci Sertifikası çalışmayı durdurdu

Son zamanlarda, sertifika çalışmayı durdurdu, istemci sertifikasını sağlamadan servise erişebilirim. İstemciyi test etmek için SOAP UI kullanıyorum. Normalde müşteri sertifikasını anahtar deposuna eklemeliyim ve ardından istek için hangi anahtarı kullanacağımı belirtmeliyim.

Geçtiğimiz günlerde bir test kurdum ve müşteri sertifikasını vermek zorunda kalmadım. Benim elimde hiçbir şey değişmedi. Kurulumu düzgün yapalım mı?

Teşekkür ederiz.

Benim Bağlama Yapılandırma:

<wsHttpBinding> 
     <binding name="BasicBinding"> 
      <security mode="TransportWithMessageCredential"> 
      <transport clientCredentialType="Certificate" /> 
      <message clientCredentialType="UserName" negotiateServiceCredential="false" establishSecurityContext="false" /> 

      </security> 

     </binding> 
     </wsHttpBinding> 

Benim Hizmeti:

<service behaviorConfiguration="APIServiceBehaviour" name="Service"> 
     <endpoint address="api" binding="wsHttpBinding" bindingConfiguration="BasicBinding" name="soap-api" bindingNamespace="https://myserver.com" contract="IAIService" /> 
     <host> 
      <baseAddresses> 
      <add baseAddress="https://myserver.com" /> 
      </baseAddresses> 
     </host> 
     </service> 

Davranış:

 <serviceAuthorization principalPermissionMode="Custom"> 
     <authorizationPolicies> 
      <add policyType="MyAuthorizationPolicy,MyProject" /> 
     </authorizationPolicies> 
     </serviceAuthorization> 

     <serviceCredentials> 

     <serviceCertificate findValue="tempSClient" storeLocation="LocalMachine" storeName="My" x509FindType="FindBySubjectName" /> 
     <userNameAuthentication userNamePasswordValidationMode="Custom" includeWindowsGroups="false" customUserNamePasswordValidatorType="MyProject.UserAuth,MyProject" /> 
     </serviceCredentials> 

    </behavior> 
+0

Neden daha önce çalıştığını düşünüyorsunuz? – Evk

+0

403 hatası alıyorum. İstemci sertifikasını eklediğimde, web hizmeti güvenliğini kullanarak kimlik doğrulama yapmamı sağlar – Allan

+0

'MyProject.UserAuth' nasıl görünüyor? – sc3w

cevap

1

sertifikaları bir son kullanma tarihi vardır. Sertifikaları certmgr.msc'de kontrol ettiniz mi?

+0

Evet. Sertifikalar tamam. – Allan