Не удалось проверить сертификат сервера: эмитенту не доверяют
При запуске цели ANT script появляется ошибка ниже. Сообщение об ошибке "Ошибка сертификата сервера". Пожалуйста, помогите устранить эту проблему. Я работаю в Windows XP.
C:\apache-ant-1.8.1>ant checkout
Buildfile: C:\Program Files\Java\apache-ant-1.8.1\build.xml
checkout:
[svn] Using command line interface
Svn : Checking out a working copy from a repository :
co -r HEAD https://col.../trunk C:\ant-1.8.1\Test_Checkout
--username 69 --password *******--non-interactive
svn: PROPFIND request failed on '/svn/asia-pac-financials/trunk'
svn: PROPFIND of '/sv.../trunk':
Server certificate verification failed:
issuer is not trusted (https://col....com)
BUILD FAILED
C:\apache-ant-1.8.1\build.xml:16: Can't checkout
Total time: 3 seconds
Ответы
Ответ 1
можете ли вы попытаться запустить svn checkout
один раз вручную на свой URL https://yoururl/trunk C:\ant-1.8.1\Test_Checkout
с помощью командной строки
и принять сертификат.
Или как @AndrewSpear говорит ниже
Вместо того, чтобы проверять вручную запуск svn list https://your.repository.url
из терминала (Mac)/командной строки (Win), чтобы получить возможность постоянно принимать сертификат
svn попросит вас подтвердить. принимайте его на постоянной основе.
После этого это должно работать для последующих запросов от ant script.
Ответ 2
Запустите "svn help commit" ко всем доступным параметрам. Вы увидите, что для принятия сертификатов сервера есть один параметр:
--trust-server-cert
: принимать неизвестные сертификаты сервера SSL без (но только с --non-interactive
)
Добавьте его в свои аргументы команды svn, и вам не нужно будет запускать svn вручную, чтобы принять его навсегда.
Ответ 3
Я бы не использовал:
svn checkout
просто для авторизации сервера, я скорее использую:
svn list https://your.repository.url
который попросит вас выполнить проверку подлинности.
Если это необходимо для получения авторизации пользователю, который не может войти в систему, запустите:
sudo -u username svn list https://your.repository.url
Ответ 4
ProcessStartInfo cmd = new ProcessStartInfo("cmd.exe",
@"/k svn log --trust-server-cert --non-interactive " +
"\"" + servidor + "\"" + " --username alex --password alex -r " + numeroRevisao);
cmd.CreateNoWindow = true;
cmd.RedirectStandardOutput = true;
cmd.RedirectStandardError = true;
cmd.WindowStyle = ProcessWindowStyle.Hidden;
cmd.UseShellExecute = false;
Process reg = Process.Start(cmd);
string output = "";
using (System.IO.StreamReader myOutput = reg.StandardOutput)
{
output += myOutput.ReadToEnd();
}
using (System.IO.StreamReader myError = reg.StandardError)
{
output += myError.ReadToEnd();
}
return output;
Ответ 5
из cmd: URL-адрес SVN-списка
вам будут предоставлены 3 варианта (r) извлечения, (a) ccept, (p).
введите p.
Эта разрешенная проблема для меня
Ответ 6
Если вы используете svn с Jenkins на Windows Server, вы должны принять сертификат https, используя одного и того же пользователя службы Windows Jenkins.
Итак, если ваша служба Jenkins работает как "MYSERVER\Administrator", вы должны использовать эту команду перед всеми остальными, только один раз:
runas/user: MYSERVER\Administrator "svn - userername user - пароль пароль список https://myserver/svn/REPO"
svn просит вас принять сертификат и сохраняет его в правильном пути.
После этого вы сможете использовать svn в работе jenkins непосредственно на шаге командной строки Windows.
Ответ 7
Другие ответы не работают для меня. Я пытаюсь заставить командную строку работать в Дженкинсе.
Все, что вам нужно, это следующие аргументы командной строки:
--non-interactive
--trust-server-cert
Ответ 8
Просто установите сертификат сервера в контейнер доверенных корневых сертификатов клиента (если он завершен, он может не работать).
Для получения дополнительной информации см. Этот пост аналогичного вопроса.
fooobar.com/questions/105616/...
Ответ 9
во время работы командной строки. Я использую Ant для фиксации артефакта после завершения сборки. Опыталась такая же проблема... Вручную за исключением cert не работал (Jenkins смешно, что путь). Добавьте эти параметры в команду svn:
- неинтерактивный
- траст-сервер-CERT