【发布时间】:2011-08-30 04:44:57
【问题描述】:
我正在从 ASP.NET 网站调用 Web 服务(需要证书)。当我在 localhost(调试)上测试它时,它可以工作,但在 IIS 6(windows server 2003)上它不起作用并引发异常:
请求失败,HTTP 状态 403:禁止。
这是代码,我如何调用网络服务:
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问题...
谢谢!
【问题讨论】:
标签: c# asp.net web-services security