2009-12-29 65 views
0

我正在開發一個針對Linux安裝系統管理的項目。安全問題:通過python更改系統密碼

我需要執行一些任務,如更改用戶密碼...

我正打算使用子模塊這一點。 我很擔心安全問題,因此,通過python進行此操作時,最佳做法是什麼?

是子過程是否足夠,或者是否有更好的工作?

[編輯]

我要補充的是,這不是一個交互腳本,將解析值到系統的passwd程序 [/編輯]

回答

3

我相信Pexpect的模塊將是最簡單這樣做的方式。

http://pexpect.sourceforge.net/pexpect.html

東西沿着這些路線應該工作得很好:

import pexpect 
import time 

def ChangePassword(user, pass): 
    passwd = pexpect.spawn("/usr/bin/passwd %s" % user) 

    for x in xrange(2): 
     # wait for password: to come out of passwd's stdout 
     passwd.expect("password: ") 
     # send pass to passwd's stdin 
     passwd.sendline(pass) 
     time.sleep(0.1) 

ChangePassword('foo', 'bar') # changes user "foo"'s password to "bar" 
+0

感謝的人......看起來有幫助 – 2009-12-29 21:40:59