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认证过程的主要内容,如果未能解决你的问题,请参考以下文章

shiro认证过程

shiro登录认证过程讲解

app与php后台接口登录认证验证(seesion和token)

基于 AOP 和 JWT 实现的 Token 身份认证组件

基于 AOP 和 JWT 实现的 Token 身份认证组件

基于 AOP 和 JWT 实现的 Token 身份认证组件