Angularjs 带有'的离子应用程序登录解决方案;记住我';功能

Angularjs 带有'的离子应用程序登录解决方案;记住我';功能,angularjs,login,ionic-framework,remember-me,Angularjs,Login,Ionic Framework,Remember Me,我正在编写一个带有登录和“记住我”功能的ionic framework应用程序 我现在只需要知道,在手机上存储用户名和密码是否安全: window.localStorage.setItem('loginMail', $scope.loginData.mail); window.localStorage.setItem('loginPassword', $scope.loginData.password); 在我的$resource服务中我使用了一个拦截器,当后端发送状态401时,拦截器会自动重

我正在编写一个带有登录和“记住我”功能的ionic framework应用程序

我现在只需要知道,在手机上存储用户名和密码是否安全:

window.localStorage.setItem('loginMail', $scope.loginData.mail);
window.localStorage.setItem('loginPassword', $scope.loginData.password);
在我的
$resource服务中
我使用了一个拦截器,当后端发送状态401时,拦截器会自动重新连接

如果
windows.localStorage
在手机上不安全,是否有更好的解决方案来存储邮件和密码


或者,您建议如何实现这样的功能?

更传统的方法是使用会话cookie来实现“记住我”。然后密码不会以明文形式保存在任何地方。@HåkenLid:不是会话cookie,而是过期时间长的cookie。否则,“记住我”功能在浏览器关闭时不会记得太多我会问我是否有可能改变REST服务器来处理正常和长期的会话,我也认为这是最好的解决方案。但是如上所述,在
windows.localStorage
中存储一些变量是否安全,或者它们是否可以被爱奥尼亚应用程序以外的任何人读取?@rholtermann:我不确定这是否是一个安全问题。当涉及到存储密码时,我将始终使用由比我更了解安全性的人制作的现有系统。长时间登录会话是通过在用户使用密码和用户名登录后在服务器上生成唯一令牌来实现的。令牌存储在客户机上的cookie和服务器上的数据库(或redis)中。服务器后端可以给每个令牌一个过期时间,或者由于任何其他原因使它们失效。这只意味着用户下次登录时必须使用密码。@SilverlightFox:谢谢。这就是我的意思。它不是会话cookie,而是包含会话令牌的持久cookie。