Search code examples
asp.netwcfsslsoapwsdl

Using Client Certificate to get SOAP server WSDL file


I am new to SSl and WCF. I have been trying to figure this out for a while now, and I read all relevant question I could find on Stack Overflow. Does anyone know what I am doing wrong?

I am currently writing a client for a SOAP Server that uses SSL client certificate for authentication. I am trying to access the WSDL file to generate a proxy for my client. However, I keep having "The request was aborted: Could not create SSL/TLS secure channel." when I try to access the file.

Here are the step I did:

  1. Created a root CA certificate using: makecert -n "CN=RootCATest" -r -sv RootCATest.pvk RootCATest.cer

  2. Installed the Root CA Certificate on my machine using MMC

  3. Created and Install Temporary Service Certificate using : makecert -sk MyKeyName -iv RootCATest.pvk -n "CN=tempCert" -ic RootCATest.cer -sr localmachine -ss my -sky exchange -pe

  4. I send the "tempCert.cer" file to the server owner who installed it on theserver

After that I still can't access the serverUrl.com/services/info?wsdl

Can anyone help me on this?

Edit:

I only own the client. The server is hosted by someone else and I don't know what technology is used there. They provided me a url to their wsdl file and they asked me to give them a certificate for client authentication. They installed that certificate on the server.

I want to use the "Add Service Reference" or SvcUtil.exe to generate a proxy with configurations (and then add my certificate to the config after). But for that I need access to the WSDL file.

I am wondering if I send them the right certificate? Should I have send the self-signed root CA certificate I used to create my certificate?

Thanks


Solution

  • Actually the only step I was missing was to send the Root CA certificate to their server also. Once it was installed on their server, my self-generated certificate validated properly. This is not a good solution for production, but it worked well during development.