I have seen a multitude of questions and answers regarding this issue but none that seem to fix or completely match my situation.
I have a website running locally on my own IIS for development purposes. This website calls a web service that is provided by a government entity to perform a task. The site is used by me to develop / tweak etc and by the testing department for preliminary testing.
Recently the government has required that we support TLS1.2 when using this service. They provided us with new SHA-2 certificates. No problem. The same service is used in a standalone application and works fine using the TLS1.2 protocol. However, now I've found that when I make the service call via our internal website it fails with the infamous 'no endpoint found ...' error. But, when I have Fiddler running it works fine.
My fiddler setting are:
- 'Ignore server certificate errors' Unchecked (Checked also fails)
- 'Protocols' ';TLS1.2' (Allowing a broader range also fails)
- 'Act as system proxy on start up' Unchecked (Checked also fails)
- 'Fiddler listens on port' 8888
- 'No proxy' Selected. ('Use system proxy' also fails)
NOTE: By 'fails' I mean the service call still works. Success to me would be if I got a helpful error.
The new certs are installed properly. Remember the service calls work fine outside of IIS.
My current take is that there is some kind of security issue because I am not using a signed certificate for my testing website even though this was not an issue before the change to SHA-2. The reason it works with Fiddler is that Fiddler uses its own certificate. Could that be it?
So, to the question, why is this service call working in the standalone application and working on my local development website only when Fiddler is running?