2011-06-14 40 views

回答

1

我敢打賭,最好的辦法是保持密碼加密,算法是你的選擇。然後,當用戶給你的憑證,你檢查它是否匹配存儲的加密數據,然後發送它。這將取消你必須保持任何文件/數據庫中的明文密碼的步驟。無論如何,你沒有說如果你真的需要保持密碼純文本(但由於遠程使用它似乎是一個案例),如果是這樣,那麼你應該使用雙向加密,以避免純文本密碼 - 它可以很容易地打破,但仍然需要比閱讀配置文件多一步。

1

存儲你的數據作爲環境變量或配置文件裏面...

+0

我的想法是,在他的機器上運行腳本的人將無法讀取用戶並通過。你的想法有可能嗎? – John 2011-06-14 19:56:41

+1

它看起來像默默無聞的安全性,通過將憑據移動到奇怪的地方來隱藏證書不會有幫助,而不是針對某個更好的人,而只是一個所謂的腳本kiddie。 – tmg 2011-06-14 20:10:22

1

使腳本把用戶名作爲命令行參數。

如果您導入sys,那麼sys.argv是所有命令行參數的列表,其中第一個是python腳本本身的名稱。

+0

我希望腳本能夠在沒有任何工作的情況下在遠程機器上運行,給出用戶名和作爲參數傳遞對我來說是不可能的。 – John 2011-06-14 19:49:44

+0

你不想要,真的不想讓密碼作爲一個命令行參數,如果你的腳本需要,然後改變它採取比ARG流。在shell歷史中保存的密碼或其他安全/重要的東西真的是邪惡的東西 – tmg 2011-06-14 20:14:02

+0

順便說一句。如果你感覺真的很好,並且你要運行腳本的服務器的安全性,那麼你可以使用ssh並告訴命令運行,只需在遠程服務器上放置沒有密碼的ssh密鑰,以允許從本地運行命令。這是快速和骯髒的解決方案,我真的不推薦,因爲安全原因。無論如何,它仍然可以滿足你的需求 – tmg 2011-06-14 20:24:49

相關問題