SharpSVN -服务器证书验证失败

本文关键字:验证 失败 证书 服务器 SharpSVN | 更新日期: 2023-09-27 18:19:23

我使用SharpSVN并在subversion中添加一个文件夹。然后我试着提交它,我得到了这个异常:

SharpSvn.SvnRepositoryIOException: OPTIONS of 'https://sth.com/svn/blah/Documents': Server certificate verification failed: certificate has expired, certificate issued for a different hostname, issuer is not trusted

我在这里看到:服务器证书验证失败

. .似乎我必须使用--trust-server-cert选项,但我在SvnCommitArgs的参数中没有看到这个。

另外,我发现了这个:如何在SharpSvn中使用自定义证书颁发机构而不安装证书

. .这里我看到了:

client.Configuration.SetOption(...)

但是我不知道我必须提供什么设置才能使它正常提交。

有人做过类似的事情吗?

编辑:我也试过这样做:

client.Authentication.SslServerTrustHandlers += new EventHandler<SharpSvn.Security.SvnSslServerTrustEventArgs>(Authentication_SslServerTrustHandlers);
    void Authentication_SslServerTrustHandlers(object sender, SharpSvn.Security.SvnSslServerTrustEventArgs e)
    {
        // Accept ceritificate here?
    }

但是我不明白我必须在处理程序中做什么来接受证书…(

SharpSVN -服务器证书验证失败

OK。我解决了这个问题,现在我得到了另一个错误。你需要做的是:

    client.Authentication.SslServerTrustHandlers += new EventHandler<SharpSvn.Security.SvnSslServerTrustEventArgs>(Authentication_SslServerTrustHandlers);
    void Authentication_SslServerTrustHandlers(object sender, SharpSvn.Security.SvnSslServerTrustEventArgs e)
    {
        // Look at the rest of the arguments of E, whether you wish to accept
        // If accept:
        e.AcceptedFailures = e.Failures;
        e.Save = true; // Save acceptance to authentication store
    }