从ASP.NET网站我打电话给Web服务(它需要证书)。当我在本地主机上测试它(调试)它的工作原理,但在IIS 6(Windows Server 2003中)不工作,并抛出一个异常:Web服务调用问题
请求失败,HTTP状态 403:禁止。
下面是代码,我如何调用Web服务:
Service service = new Service();
service.ClientCertificates.Add(new X509Certificate("certificate path", "password"));
service.Credentials = System.Net.CredentialCache.DefaultNetworkCredentials;
ServicePointManager.ServerCertificateValidationCallback = new System.Net.Security.RemoteCertificateValidationCallback(ValidationCallBack);
Result res = service.GetResult();
private static bool ValidationCallBack(object sender, X509Certificate cert, X509Chain chain, System.Net.Security.SslPolicyErrors error)
{
return true;
}
这是什么错误的原因以及如何避免这种情况?
我试过用winForms进行web服务调用,它在服务器上工作正常。所以我认为这是IIS问题...
谢谢!
查看我的更新回答。 – jams 2011-05-21 12:10:46