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。如果您需要访问纯文本密码,则只能混淆密码。你不能安全地存储它。密钥需要很简单,或者加密密钥的密钥需要处于简单的,无限的状态。无法完成。

相关问题