簡體   English   中英

使用Python子進程的kinit

[英]kinit using Python subprocess

我正在嘗試通過subprocess + ssh連接到遠程服務器以列​​出目錄中的文件並在該目錄中打印文件的內容。 要做到這一點,我需要運行kinit作為Python子進程。任何想法如何做到這一點? 假設用戶使用他們的kerberos id和密碼登錄..

謝謝。

如果要運行kinit以使用戶獲得Kerberos票證,您可以只提示輸入密碼(例如使用getpass模塊),然后將該輸入傳遞給子進程。

這看起來像這樣:

from subprocess import Popen, PIPE

kinit = '/usr/bin/kinit'
kinit_args = [ kinit, '%s@%s' % (userid, realm) ]
kinit = Popen(kinit_args, stdin=PIPE, stdout=PIPE, stderr=PIPE)
kinit.stdin.write('%s\n' % password)
kinit.wait()

這以通常的方式建立票證,應該通過任何以常規方式查找Kerberos票證的任何方式(在片段來自的代碼中,用於驗證LDAP連接)來獲取: https//github.com/ jeremyroman / pyceo /斑點/主/ CEO / ldapi.py

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM