APP登录Token认证过程
Posted kaka6k66k
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了APP登录Token认证过程相关的知识,希望对你有一定的参考价值。
1.App登录Token登录机制:
一般第一次安装App后,会让你进行注册后登录,而只要登录成功后,以后的每次启动App都是登录状态,
不需要每次启动时再登录。但有些App你若长期没有启动,它会提示你登录过期,让你重新登录。整个过程如
下:
2.Token的生成过程:
3.Token相对于Cookie的好处:
1).支持跨域访问: Cookie是不允许垮域访问的,token支持
2).无状态: token无状态,session有状态的
3).去耦: 不需要绑定到一个特定的身份验证方案。Token可以在任何地方生成,只要在 你的API被调用的时候, 你可以进行Token生成调用即可.
更适用于移动应用: Cookie不支持手机端访问的
4).性能: 在网络传输的过程中,性能更好
基于标准化: 你的API可以采用标准化的 JSON Web Token (JWT). 这个标准已经存在 多个后端库(.NET, Ruby, Java,Python, php)
和多家公司的支持(如: Firebase,Google, Microsoft)。
4.Token的 缺陷
1). 占带宽
正常情况下要比 session_id 更大,需要消耗更多流量,挤占更多带宽,假如你的网站每月有 10 万次的浏览器,就意味着要多开销几十兆的流量。
听起来并不多,但日积月累也是不小一笔开销。实际上,许多人会在 JWT 中存储的信息会更多。
2). 无法在服务端注销,那么就很难解决劫持问题
3.) 性能问题:
JWT(Json Web Token) 的卖点之一就是加密签名,由于这个特性,接收方得以验证 JWT 是否有效且被信任。但是大多数 Web 身份认证应用中,
JWT 都会被存储到 Cookie 中,这就是说你有了两个层面的签名。听着似乎很牛逼,但是没有任何优势,为此,你需要花费两倍的 CPU 开销来验证签名。
对于有着严格性能要求的 Web 应用,这并不理想,尤其对于单线程环境。
以上是关于APP登录Token认证过程的主要内容,如果未能解决你的问题,请参考以下文章