Sono in una situazione in cui ho bisogno di passare alcuni testi a un prompt generato da un'API (sembra per API è un comportamento piuttosto strano, questa è la prima volta che mi sono imbattuto in questo), come di seguito:Come gestire l'API interattiva in python
kvm_cli = libvirt.open("qemu+ssh://[email protected]/system")
allora un avviso presenta chiede la password ssh (password for 10.0.10.8 is:
), devo digitare manualmente lì per muoversi su e cedere l'oggetto kvm_cli
avevo bisogno.
Ho provato a utilizzare il modulo pexpect
per gestire questo, ma è per la riga di comando del sistema operativo anziché API.
È anche possibile aggirare questo problema utilizzando i file di certificazione ssh ma non è un approccio di autenticazione favorevole nel nostro scenario.
Poiché il nostro wrapper per il metodo "open" non è interattivo, non possiamo chiedere all'utente di inserire la password, avete mai pensato a come potrei indirizzarlo?
Immagino che i file di certificazione ssh siano gli stessi del login "basato su chiave" suggerito da Andrea. perché pensi che i certificati ssh non siano un approccio praticabile a questo problema, è quello che userei nella situazione. –