C# 我如何告诉WCF跳过来自客户端.NET和web服务JAVA的证书验证?

C# 我如何告诉WCF跳过来自客户端.NET和web服务JAVA的证书验证?,c#,wcf,ssl,x509certificate,soap-client,C#,Wcf,Ssl,X509certificate,Soap Client,我已经用C语言构建了一个简单的客户端来调用soap JAVA web服务。 所以我对验证响应有问题。 我想问题出在证书上 这是我的app.config <?xml version="1.0" encoding="utf-8"?> <configuration> <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5"/>

我已经用C语言构建了一个简单的客户端来调用soap JAVA web服务。 所以我对验证响应有问题。 我想问题出在证书上

这是我的app.config

<?xml version="1.0" encoding="utf-8"?>
<configuration>

    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5"/>
    </startup>
    <system.serviceModel>
      <behaviors>
        <endpointBehaviors>
          <behavior name="DisableServiceCertificateValidation">
              <clientCredentials>
                  <serviceCertificate>
                      <authentication certificateValidationMode="None"
                                      revocationMode="NoCheck" trustedStoreLocation="LocalMachine"/>
                  </serviceCertificate>
              </clientCredentials>
          </behavior>
        </endpointBehaviors>
      </behaviors>

      <bindings>
        <customBinding>
          <binding name="MyNewService">
            <security defaultAlgorithmSuite="Basic128" authenticationMode="MutualCertificate" requireDerivedKeys="false" securityHeaderLayout="Lax" includeTimestamp="true" messageProtectionOrder="SignBeforeEncrypt" messageSecurityVersion="WSSecurity10WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10" requireSignatureConfirmation="false" enableUnsecuredResponse="false">
              <localClientSettings detectReplays="true"/>
              <localServiceSettings detectReplays="true"/>

            </security>
            <textMessageEncoding messageVersion="Soap11WSAddressing10"/>
            <httpsTransport/>

          </binding>
        </customBinding>

      </bindings>


      <serviceHostingEnvironment multipleSiteBindingsEnabled="true" aspNetCompatibilityEnabled="true" />

        <client>

          <endpoint address="https://edottotest.sanita.regione.rsr.rupar.puglia.it/nsisr/PianoAssistenzialeResidenzialeService" 
                    binding="customBinding" bindingConfiguration="MyNewService"
            contract="PianoAssistenzialeResidenzialeService.PianoAssistenzialeResidenziale" name="PianoAssistenzialeResidenzialePort"
            behaviorConfiguration="DisableServiceCertificateValidation"/>
        </client>



    </system.serviceModel>
</configuration>
但是当我尝试调用web服务时,我在验证证书中出错。 现在,如何禁用此验证

PianoAssistenzialeResidenzialeClient ws_Client = new PianoAssistenzialeResidenzialeClient("PianoAssistenzialeResidenzialePort", "https://edottotest.sanita.regione.rsr.rupar.puglia.it/nsisr/PianoAssistenzialeResidenzialeService");
ws_Client.ClientCredentials.ClientCertificate.Certificate=certificatoLocale;
ws_Client.ClientCredentials.ServiceCertificate.DefaultCertificate = certificatoLocale;

ws_Client.ClientCredentials.ServiceCertificate.Authentication.CertificateValidationMode = X509CertificateValidationMode.None;


EndpointIdentity identity = EndpointIdentity.CreateDnsIdentity("HEALTHNETBR");
EndpointAddress address = new EndpointAddress(new Uri("https://edottotest.sanita.regione.rsr.rupar.puglia.it/nsisr/PianoAssistenzialeResidenzialeService"), identity);

ws_Client.Endpoint.Address = address;
ws_Client.getElencoPAIDomiciliare(attributi, request);