我在Windows上使用git.我安装了msysgit包.我的测试存储库在服务器上有一个自签名证书.我可以使用http访问和使用存储库而不会出现问题.移至https会出现错误"SSL证书问题:无法获取本地颁发者证书".
我在Windows 7客户端计算机的受信任的根证书颁发机构中安装了自签名证书.我可以浏览到Internet Explorer中的https存储库URL,没有错误消息.
本博客http://blogs.msdn.com/b/phkelley/archive/2014/01/20/adding-a-corporate-or-self-signed-certificate-authority-to-git-exe-s-store. aspx解释说curl不使用客户机的证书存储区.我按照博客文章的建议创建了curl-ca-bundle.crt的私有副本,并配置git来使用它.我确信git正在使用我的副本.如果我重命名副本; git抱怨文件丢失了.
我粘贴在我的证书中,如博客文章中所述,我仍然收到"无法获得本地颁发者证书"的消息.
我通过https克隆了一个GitHub存储库,验证了git仍在工作.
我唯一看到的与博客文章不同的是我的证书是根证书 - 没有链条可以达到它.我的证书最初来自于单击IIS8 IIS管理器链接"创建自签名证书".也许这使得证书在某种程度上与curl期望的不同.
如何获得git/curl接受自签名证书?
我正在尝试为自己制作一个开发证书链,用于WCF的一些测试.我在这里关注msdn上的文章:如何:创建在开发过程中使用的临时证书
不幸的是,说明不起作用.私钥不可导出.我甚至用makecert.exe的"-pe"选项重新尝试了它,它仍然无法正常工作.我在以管理员身份运行时尝试过它并且不起作用.在mmc本身使用"导出"时,它询问私钥的第一个屏幕显示"是/否"选项,并在其下面显示一条消息:"相关的私钥被标记为不可导出.只有证书可以出口."
有什么建议?MSDN上的更新程序可能还是另一个完全?我正在寻找的是与WCF一起用于某些基本测试的证书.这是在Windows 8 Pro上,但我怀疑这很重要.