全部 -
我正在使用C#的WebClient
类通过https访问远程服务器上的资源。我感兴趣的资源是远程服务器上的文件。我正在使用以下调用来访问该文件:
WebClient client = new WebClient(); client.DownloadData("https://someuri/file.txt");
当调用上面的代码时,我得到一个System.Security.Authentication.AuthenticationException: The remote certificate is invalid according to the validation procedure.
我已通过IE手动访问该网站并添加了证书。作为受信任的颁发者,可以在IE中浏览资源而不会出现问题。 C#不使用标准的Windows证书存储区吗?还是我必须自己编写CertificatePolicy
?我真的很想使用内置的身份验证算法。
提前致谢。
答案 0 :(得分:1)
为了使其正常工作,您不能只接受浏览器中的结束证书。您必须使用cmd:mmc控制台将证书加载到计算机信任存储区中,而不仅仅是用户信任存储区。
答案 1 :(得分:0)
您是否通过ASP.Net运行此代码?如果是这样,您可能必须安装本地计算机的证书,因为您为登录安装的证书不能被ASP.net使用