[英]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.