0

我有一個命令行應用程序(不是rails),它需要用戶爲cli訪問的網站提供他們的用戶名和密碼。如何管理在硬盤上存儲加密用戶憑證的Ruby應用程序中的加密密鑰?

我不想讓用戶輸入他們執行的每個命令的詳細信息。

如何在不影響安全性和不加密存儲細節的情況下存儲細節?如果我加密密碼,我應該在哪裏存儲密鑰,以便它仍然安全?

我想象一種類似於Heroku寶石工程的實現方式會很好。

UPDATE:

所以,我已經取得了進展,在我的應用程序中實現這一點,但東西並不覺得這個解決方案完全正確呢。

在首次訪問網站之前,會提示用戶輸入他們的用戶名和密碼。在成功登錄之後,詢問用戶是否稍後存儲細節。如果是,則使用密鑰對密碼進行加密 - 但是,由於這是一個紅寶石,密鑰以純文本形式存儲在應用程序中。

是否有另一種方式來做到這一點。包含用戶名/密碼的文件現在是安全的,但解鎖它的密鑰存儲在應用程序代碼中。

+0

http://stackoverflow.com/questions/7735422/verify-client-certificate-using-sslserver-in-ruby – clyfe

+0

我不明白這是如何相關,我的應用程序只需要存儲和檢索用戶名和密碼在一個安全的方式? – ktec

+0

我在想,建議使用密碼保護的證書認證將解決您的安全問題,這與heroku gem類似。好東西,這是一個評論,而不是一個答案。 – clyfe

回答

0

關於更新:no。如果您需要訪問純文本密碼,則只能混淆密碼。你不能安全地存儲它。密鑰需要很簡單,或者加密密鑰的密鑰需要處於簡單的,無限的狀態。無法完成。

相關問題