2013-04-27 63 views
-1

我正在尋找一種方法來確保我一直在努力的一些程序。 一些設置或更改用戶密碼,現在想創建一個用於登錄的GUI,並意識到我一直在編寫軟件時有多不安全。

我使用gtkdialog作爲我的前端。這使用GTK +

gui中輸入的密碼在屏幕上隱藏,並且密碼被導出到變量。

變量也可能不能出口作爲一個解決方案(我可以解決此,雖然它會更好,如果我沒得)

請提供一種方法來安全地處理gtkdialog內的密碼或者部分和/或安全地處理bash腳本中的密碼。 「解鎖」 的使用

例如:密碼更改的

export password="pass" 
echo "$password" | sudo 

例如:

password="old pass" 
new_pass="new pass" 
echo "$password\n$new_pass\n$new_pass" | passwd 

非常感謝你的任何幫助。

+0

您是否真的需要首先處理密碼? 'sudo'可以配置爲允許特定的用戶或組無需密碼即可運行特定的命令。當然,在你的情況下這是否可行取決於應該運行的命令。 – 2013-04-27 11:53:19

+0

在我的情況下這是不可行的,這也是爲了減少可能的依賴性問題。也爲用戶編寫程序以更改他們自己的密碼是由於缺少備用選項。 – user2225483 2013-04-27 22:19:57

回答

1

不一定只要你想安全的,但有兩個選擇:

取消設置完成後的VAR

未設置$密碼

或者,如果$密碼僅用於對內部功能,你可以使用本地變量

本地$ password =「pass」

此外,您不想使用export設置您的安全瓦爾...,這將使他們的殼變種...

密碼=「通行證」

+0

這就像我已經能夠提出自己一樣。這就是爲什麼我來這裏尋求更好的東西。我很確定,無論我做什麼,使用gtkdialog來設置變量都是不安全的。 – user2225483 2013-04-30 08:36:32