移动应用程序开发 - HTML5 LocalStorage与SessionStorage对比Cookie

时间:2011-05-02 21:36:53

标签: web-applications mobile security jquery-mobile

我们正在jQuery Mobile平台上开发一个移动Web应用程序,要求用户提供用户名和密码。

每次我们只想询问用户的用户名和密码,然后提示他们输入密码,而不是要求用户重新输入他们的详细信息。

我们将加密此引脚并加密用户标识符字符串并将其保存在LocalStorage或Cookie中。

当用户第二次访问该应用程序时,我们将测试是否可以找到用户标识符,如果是,则提示他们输入pin。

一旦输入了引脚,我们将安全地(SSL)传递引脚和用户标识符,以便在服务器上进行解密和验证。

我在一些地方读过我们应该使用Cookie而不是LocalStorage(从安全的角度来看)。您是否同意这一点,并且可以在大多数智能手机上使用Cookie?

我们还需要确保用户每次关闭浏览器或浏览其他页面或超过30分钟不活动时都需要重新输入其引脚。

为了管理这个,我想在SessionStorage中存储一个值,因为我已经读过它比LocalStorage更安全并且在浏览器关闭时过期。或者我们可以再次使用Cookies。

安全是一个关键问题,所以我有兴趣听取您可能提供的任何提示和/或替代方法。

非常感谢...

1 个答案:

答案 0 :(得分:6)

如果安全是您的首要关注点,我建议您不要使用Cookie,因为它们会随着每次请求一起发送到服务器,这可能被任何通过网络嗅探流量的人拦截。在性能方面,使用cookie还会增加服务器和客户端之间来回传输的数据量。

出于您的目的,如果您希望数据仅在浏览器会话的生命周期内保持不变,我会选择sessionStorage,包括您可以测试会话到期的时间戳。 sessionStoragelocalStorage中的数据仅保留在客户端上,永远不会发送到服务器。