Law*_*ton 28 ssl wcf wcftestclient self-signed ssl-certificate
我有一个使用自签名证书在IIS 7中运行的WCF Web服务(这是一个概念证明,以确保这是我想要的路线).它需要使用SSL.
是否可以使用WCF测试客户端调试此服务而无需非自签名证书?
当我尝试时,我收到此错误:
错误:无法从https:///Service1.svc获取元数据如果这是您有权访问的Windows(R)Communication Foundation服务,请检查您是否已在指定地址启用元数据发布.有关启用元数据发布的帮助,请参阅http://go.microsoft.com/fwlink/?LinkId=65455上的MSDN文档 .WS-Metadata Exchange错误URI:https:///Service1.svc元数据包含一个引用无法解决:'https:///Service1.svc'.无法与具有权限''的SSL/TLS安全通道建立信任关系.底层连接已关闭:无法为SSL/TLS安全通道建立信任关系.根据验证程序,远程证书无效.HTTP GET错误URI:https:///Service1.svc下载"https:///Service1.svc"时出错.底层连接已关闭:无法为SSL/TLS安全通道建立信任关系.根据验证程序,远程证书无效.
编辑:此问题具体是关于使用WCF测试客户端使用自签名证书测试已通过SSL保护的Web服务.服务器已经设置为接受所提供的任何证书,这是WCF测试客户端我没有看到这样做的方法.
小智 12
您可以在开发区域中创建非自签名证书,然后在IIS中使用此证书来应用SSL.步骤是:
创建自签名证书
makecert -r -pe -n "CN=My Root Authority" -a sha1 -sky signature -ss CA -sr CurrentUser -cy authority -sv CA.pvk CA.cer
为SSL创建一个非自签名证书,该证书由此根证书签名,然后从中创建pfx文件
makecert -pe -n "CN=servername" -a sha1 -sky exchange -eku 1.3.6.1.5.5.7.3.1 -ic CA.cer -iv CA.pvk -sp "Microsoft RSA SChannel Cryptographic Provider" -sy 12 -sv server.pvk server.cer pvk2pfx -pvk server.pvk -spc server.cer -pfx server.pfx
现在您只需要导入server.pfx
到IIS并设置网站绑定以使用此证书,并通过执行此操作在服务器和客户端中安装CA.cer
in Local Computer
\ Trusted Root Certification Authorities
store,WCF客户端将通过HTTPS使用该服务而没有任何问题.
如果您将 WCF 测试客户端替换为WCFtorm Lite Edition,您应该能够执行此操作。它是免费的,并且比 MS 的测试客户端灵活得多...例如,如果您正在进行用户名身份验证,它会让您指定用户名和密码。
rgu*_*wan -4
您可以提供自己的方法来验证证书。
尝试这个:
ServicePointManager.ServerCertificateValidationCallback +=
new System.Net.Security.RemoteCertificateValidationCallback(EasyCertCheck);
Run Code Online (Sandbox Code Playgroud)
回电:
bool EasyCertCheck(object sender, X509Certificate cert,
X509Chain chain, System.Net.Security.SslPolicyErrors error)
{
return true;
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
25320 次 |
最近记录: |