tags:

views:

19

answers:

2

hi everyone. im trying to implement simple secured client server communiction using WCF. when im launching mt server everty thing is OK , But when im launching my client im getting this error: Error : An error occurred while making the HTTP request to https://localhost:800 0/ExchangeService. This could be due to the fact that the server certificate is not configured properly with HTTP.SYS in the HTTPS case. This could also be caus ed by a mismatch of the security binding between the client and the server.

this is the server code :

        Uri address    = new Uri("https://localhost:8000/ExchangeService");

        WSHttpBinding binding = new WSHttpBinding();

        //Set Binding Params
        binding.Security.Mode = SecurityMode.Transport;
        binding.Security.Transport.ClientCredentialType =     HttpClientCredentialType.None;
        binding.Security.Transport.ProxyCredentialType = HttpProxyCredentialType.None;


        Type        contract = typeof(ExchangeService.ServiceContract.ITradeService);
        ServiceHost host = new ServiceHost(typeof(TradeService)); 


        host.AddServiceEndpoint(contract, binding, address);
        host.Open();   

this is the client configuration (app.config):

</client>
<bindings>
  <wsHttpBinding>
    <binding name="TradeWsHttpBinding">
      <security mode="Transport">
        <transport clientCredentialType="None"
                   proxyCredentialType ="None"/>
      </security>

    </binding>
  </wsHttpBinding>
</bindings>

the security configuration at both the client and the server are the same , and i dont need certificate for the server in that kind of security (transport) so why do i get this exception ????

thanks...

A: 

Take a look at this post, there's an example of a server setup :

Wcf server setup

djerry
My Server configuration is fine, the problem is with the security feature
Liran
+1  A: 

Well looking at your code:

Uri address    = new Uri("https://localhost:8000/ExchangeService");

You're specifying that the address is using SSL (https) so it would require a certificate for that purpose. Either use a http binding or install a certificate.

I'd check out the Application Scenarios and How Tos section on this CodePlex Link for different configurations and details of how to configure them.

Tanner