【发布时间】:2012-02-02 09:30:25
【问题描述】:
我正在尝试通过使用服务器证书来保护我们的网络服务。为了进行测试,我在 IIS 管理控制台上创建了一个自签名证书,并将站点配置为使用该证书。 在 IIS 上,我创建了 HTTPS 绑定,并将其配置为使用证书。在我的 web 服务的虚拟路径上启用 SSL 并将其设置为 require 客户端证书。
右键单击证书,将其与密码一起导出到测试客户端的文件系统。
我使用以下代码来调用 web 服务,使用证书作为客户端证书:
SSLServiceReference.DataAccessService lService = new SSLServiceReference.DataAccessService();
X509Certificate2 lCert = new System.Security.Cryptography.X509Certificates.X509Certificate2(@"C:\Users\Dev06\Documents\TestSamsung2Cert.pfx", "qwerty");
lService.ClientCertificates.Add(lCert);
lService.Credentials = CredentialCache.DefaultNetworkCredentials;
DataSet lSet = lService.GetSites();
但在调用 GetSites() 时,我收到 403.7 http 错误。 我究竟做错了什么?我的意图是要求使用 Web 服务的客户端提供此证书,以便只有他们可以调用它。
IIS 7
感谢您的任何指点。
【问题讨论】:
标签: asp.net .net web-services iis ssl