2013-06-20 2 views
6

Я использую SharpSVN, и я добавляю папку в подрывную. Тогда я пытаюсь совершить его, и я получаю это исключение:SharpSVN - Ошибка сертификата сервера

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

Насколько я вижу здесь: Server certificate verification failed

..похоже, что я должен использовать --trust-server-cert вариант, но я не» t видеть это где угодно в аргументах SvnCommitArgs.

Кроме того, я нашел это: How do I use a custom Certificate Authority in SharpSvn without installing the certificate

..where Я вижу это:

client.Configuration.SetOption(...) 

Но я не знаю, какие настройки я должен предоставить, чтобы сделать его совершить без проблем.

Кто-нибудь сделал что-нибудь подобное?

EDIT: Я также попытался это сделать:

client.Authentication.SslServerTrustHandlers += new EventHandler<SharpSvn.Security.SvnSslServerTrustEventArgs>(Authentication_SslServerTrustHandlers); 

    void Authentication_SslServerTrustHandlers(object sender, SharpSvn.Security.SvnSslServerTrustEventArgs e) 
    { 
     // Accept ceritificate here? 
    } 

Но я не понимаю, что я должен делать внутри обработчика, чтобы принять сертификат ... :(

ответ

10

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 
    } 
+1

Убедитесь, что вы также смотрите на другой аргумент «E» и проверка. Это позволяет * all * SSL certs (также истек, отменен и т. Д.), –

Смежные вопросы