现系统的登录模块采用以前的后端以session为token的方式。
一般用的是oauth2方式, 后台返回token时, 可自行设置token过期时间, 通常来说, 也会附带一个refresh_token字段. 当你上面获取的token过期时, 可refresh_token重新获取token而不用再次验证用户名及密码.
可参考下面:
http://tools.ietf.org/html/rfc6749
######我一直记得OAuth是一种用户可以不告知服务A其在服务B上的用户名和密码却可以在服务A上安全的使用服务B的一种认证方式? 用OAuth2是基于哪方面考虑的?是因为有refresh_token还是OAuth已经不单单局限于安全使用第三方资源这种形式了呢?###### http://my.oschina.net/kaster/blog/130861
参考本篇,和其他相关文章
客户端一般不会缓存密码一类的东西,我们是缓存 openid和token ######回复 @徐牛 : openid和TokenKey时效很长,未来客户端无须登录,直接调用响应的接口,服务端会验签,无效会返回登录超时。######文章很好,但是没有讨论到如何避免需要经常登录的问题? 是tokenKey会长期有效吗?###### 客户端本身网络稳定性差,有些Session框架在网络切换后,Session失效。
我们没有使用传统框架的Session机制,主要是和后台分布式的部署有关系。
接口方面,我们就是使用restful请求接口,接入层的分发服务器并不验证Session,只负责分发,真正的后台接口会自己来验证Session的有效性,对于分布在不同设备和进程的应用,使用Redis来缓存Session信息。 ######自己做是最终方案,而自己做授权系统这块要设计到加密算法,session,角色管理等等,我们这边开发力量不够。所以想看看有没有合适的框架。 不知道Srping secure等有没有这方面的优化。######求解答###### stateless ###### 类似的问题我也问过
作为第三方登陆,基本上是遵循oauth2
作为自己的用户登陆,我方案是结合两者优点,用token加用户名,不用session,哦我做的是ios开发,安卓不知道,还有人告诉我用心跳包的方式保持类似session的功能,因为移动端不知道什么时候就离开了,每隔多少时间发个包,表明存在,我觉得太麻烦了呵呵。 ######我感觉Session是一种比较简化的token不管是你自己用token还是session都绕不过我提的问题。 心跳是在长连接中才需要考虑的吧。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。