Hello,
We've encountered an annoying issue and have no idea whats causing it or why. We have an application deployed to a site (about 5 clients) and they communicate with our webservice accross the internet. They have a proxy. Our software has a proxy configuration area and creates a proxy object and sets it to the webservice ..
Now, the first client we installed it on worked fine. We configured their proxy details and then logged in. No issues. We then installed it on the next machine and we get "403 forbidden" when we try to log in via their proxy to our webservice. Now, strangely we can actually browse to the webservice via internet explorer fine. We changed the webservice URL in the app.config file and continued to get 403 forbidden nomatter what address we put in there. When we left it blank we got "invalid URL" so it was reading it fine.
We have confirmed there are no machine specific lockdowns on the client network in place. We also used the same user that worked on the first machine. We also used different users. It does not seem to be a user / network policy issue.
Now the address for our webservice is https with a certificate. From what i've read, this might be the source of the issue but im unable to really find much info.
Any help or pointers on this would be great!
Loading
mikePosted Jul 28, 2010, 4:16 AM
Thanks for the response! I do get the popup, however I dont think its the first issue because i've even tried putting in this piece of code so that it ignores/accepts the popup dialog (and its also working fine on other machines)
// Stops the SSL dialog coming up and causing an error when navigating programmatically
System.Net.ServicePointManager.ServerCertificateValidationCallback +=
delegate(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors)
{
bool validationResult = true; // accept all
return validationResult;
};
I will try the other idea, but do you know why it would be working on some machines and not others? Could it be requested as a 'Computer' template cert for client auth on some but not on others? (im quite vague in this area!)
EDIT: (thanks again for all those links!)
Ajay GautamPosted Jul 28, 2010, 1:15 AM
Try few things:-
It Sounds like the SSL certificate is failing to authenticate for the web service client. A good check is if you go to the service from the client's machine and get an alert in the browser about an SSL certificate your service will not authenticate with the certificate (certificate is not trusted). It's not that the certificate doesn't work, it's just not trusted.
If the service is across machines you might have to setup a certificate authority (this might help http://www.petri.co.il/install_windows_server_2003_ca.htm) and add it as a trusted publisher on the client machine. This might also help http://support.microsoft.com/kb/901183.
or
Make sure your client certificate was requested as a 'Computer' template certificate for 'Client Authentication' otherwise it will not work.
or http://support.microsoft.com/kb/901183 http://support.microsoft.com/kb/822322
or http://forums.asp.net/t/1507711.aspx
or http://forums.techarena.in/small-business-server/257680.htm