2015-08-25 47 views
-3

我正在编写C++桌面应用程序,允许用户登录某些Web服务。按照技术要求,用户可以选中“记住我”复选框,关闭应用程序并重新运行后,应用程序应该首次使用电子邮件和密码用户输入重新登录。以后在C++应用程序中登录存储密码

我知道这是不安全的,强烈不建议将密码存储在磁盘上,但我不知道如何以安全的方式记住用户的密码。有这种情况下的最佳做法或建议吗?

注意:我的应用程序是针对Windows/Ubuntu/MacOS的,因此了解与操作系统无关的方法将会很酷。我的应用程序是基于C++ 11/Qt5.4的。

+2

你可以存储一个体面加密的密码? –

+0

当然可以。我只是在问最佳做法。 –

+0

_“我只是在询问最佳做法。”_事实证明这种做法被广泛接受,并且很可能在这里被关闭。 –

回答

0

您应该实现这种设计的方式是向用户发出本地存储的SessionID,以及用于验证和访问其特定接口的SessionID。然后,如果他们希望稍后再次登录,只需使用存储的SessionID,并且如果他们希望以其他人身份登录,则清除SessionID,然后像正常一样登录它们,发出新的SessionID。这样你就不会在他们的计算机上存储敏感信息。

+0

不幸的是,Web服务在某些情况下使会话ID无效,如长时间的用户不活动。 –

+0

没错,但你是编写应用程序的人。您可以选择如何/何时应该实现该功能。 – Xirema

相关问题