Почему я получаю «издатель не доверяет», когда я пытаюсь войти в Subversion из Perl? - PullRequest
2 голосов
/ 14 октября 2010

Я пытаюсь войти в Subversion, я постоянно храню сертификат, но получаю эту ошибку:

Сбой запроса уровня RA: Сбой запроса PROPFIND на '/svn/QFlife/Projects%20DotNet/QFX/trunk/Clients':PROPFIND of '/svn/QFlife/Projects%20DotNet/QFX/trunk/Clients': Ошибка проверки сертификата сервера: эмитент не является доверенным (https://vc.flife.de) at list.pl l

Это код, который отвечает за аутентификацию:

sub getauth
{
    my $cred = shift;
    $cred->username($user);
    $cred->password($passwd);
}


my $ctx = SVN::Client->new
(
    auth =>     [    SVN::Client::get_simple_provider(),
                SVN::Client::get_simple_prompt_provider
                (
                    \&getauth,2
                ),
                SVN::Client::get_username_provider()
            ],
);

Может ли кто-нибудь подсказать мне, что я делаю не так?

Ответы [ 2 ]

1 голос
/ 06 января 2011

Вы используете соединение https, что означает, что при установлении соединения сервер отправит свой сертификат клиенту.Клиент проверит, что сертификат действителен, а именно: общее имя сертификата и URL-адрес сервера совпадают и что сертификат был выдан доверенным органом.Согласно вашему сообщению это проблема.

Таким образом, решения могут быть:

  1. Добавить сертификат эмитента в базу доверенных издателей
  2. Сконфигурировать библиотеку perl SVNигнорировать проблемы с сертификатом.
0 голосов
/ 18 октября 2011

Если вы окончательно добавили сертификат, добавление ssl_server_trust_file_provider в ваш список аутентификации должно сделать это:

my $ctx = SVN::Client->new(
    auth => [ SVN::Client::get_simple_provider(),
              SVN::Client::get_simple_prompt_provider(\&getauth,2),
              SVN::Client::get_username_provider(),
              SVN::Client::get_ssl_server_trust_file_provider()
            ],
);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...