SVN komut satırını istemi önleyecek şekilde kullanarak bir SSL sertifikasını otomatik olarak kabul etmek için bir komut satırı seçeneği var mı?
SVN komut satırını istemi önleyecek şekilde kullanarak bir SSL sertifikasını otomatik olarak kabul etmek için bir komut satırı seçeneği var mı?
Yanıtlar:
Bir şekilde SVN sürümünüze bağlıdır. Son zamanlarda (1.6+) olanlar olağan --non-interactive
(istemleri önlemek için kullanmak istediğiniz) ve aynı zamanda --trust-server-cert
ne istediğinizi yapabilirsiniz.
Kullanmak --trust-server-cert
SSL sertifikasını kalıcı olarak kabul etmeyecektir. SSL Sertifikasını Komut satırı üzerinden Input Redirection kullanarak ve kullanmadan kalıcı olarak kabul edebilirsiniz --non-interactive
.
Unix / Linux için bir örnek:
svn list [TARGET] << EOF
p
EOF
NOT: Yukarıdaki "p" kalıcı olarak (p) içindir.
1.6.6 (r40053)
) maalesef p
(kalıcı) seçeneğini hiç sunmayacak . Ve bu artık güncelleyemediğim eski bir kutuda olduğu için ...
Çözümüm beklenti kullanıyor. Güvenli değildir, ancak diğer çözümler işe yaramadığında çalışır.
#!/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@.*:\/#"
Sertifikayı indirebilmeniz ve ardından uygun dizine yerleştirebilmeniz gerekir. Veya CA sertifikasını indirip ssl-authority-files yapılandırma seçeneğini bu CA'ya güvenecek şekilde ayarlayabilirsiniz .
Bkz SSL Sertifikası Yönetim kitapta bölüm.