Как Вы принимаете сертификат SSL через командную строку SVN?

Существует одна книга, в которой Вы нуждаетесь на своем столе: Компьютерные сети Tannenbaum 5-й Выпуск:

любезность покрытия google http://ecx.images-amazon.com/images/I/61vW8LrWx4L._BO2,204,203,200_PIsitb-sticker-arrow-click,TopRight,35,-76_AA300_SH20_OU01_.jpg

Это затронет широкий спектр сетевых тем, с проницательными схемами и самое главное, цитаты для дополнительных материалов для чтения. Это не ограничивает себя TCP/IP или "Интернетом", но покрывает широкий спектр возможных сетей, локальной, сотовой, специальной беспроводной связи, и т.д.

20
задан 8 July 2009 в 23:34
4 ответа

Это зависит несколько от Вашей версии SVN. Недавний (1.6 +) имеют обычное --non-interactive (который Вы хотите использовать для предотвращения подсказок), и также a --trust-server-cert это может сделать то, что Вы хотите.

20
ответ дан 2 December 2019 в 20:10
  • 1
    Это решение, кажется, работает. К сожалению, сертификат командной строки принимает didn' t решают мою начальную проблему. О, хорошо по крайней мере, я знаю что doesn' t работают теперь. –  James McMahon 9 July 2009 в 18:19

Необходимо смочь загрузить сертификат и затем поместить его в соответствующий каталог. Или можно загрузить сертификат CA и затем установить ssl-авторитетные-файлы параметра конфигурации для доверия этому Приблизительно.

Посмотрите раздел управления сертификатом SSL в книге.

0
ответ дан 2 December 2019 в 20:10

Использование - trust-server-cert не приведет к постоянному принятию сертификата SSL. Вы можете навсегда принять сертификат SSL через командную строку, используя Перенаправление ввода и не используя - неинтерактивный .

Вот пример для Unix / Linux:

svn list [TARGET] << EOF
p
EOF

ПРИМЕЧАНИЕ : Буква "p" выше означает (p) постоянно.

10
ответ дан 2 December 2019 в 20:10

В моем решении используется expect. Это небезопасно, но будет работать, когда другие решения не будут.

#!/usr/bin/expect -f

set svn_username [lindex $argv 0]
set svn_password [lindex $argv 1]
set svn_url [lindex $argv 2]

spawn svn --username=${svn_username} --password=${svn_password} list ${svn_url}
expect "(R)eject, accept (t)emporarily or accept (p)ermanently? "
send -- "p\r"
expect "Store password unencrypted (yes/no)? "
send "no\r"
expect -re "root@.*:\/#"
2
ответ дан 2 December 2019 в 20:10

Теги

Похожие вопросы