token什么意思中文(token详解)

OKX欧意app

欧意交易app是全球排名第一的虚拟货币交易所。

APP下载   官网地址

cookie/session本文简要阐述了机制cookie和session本文将简要阐述另一个相同的原则。cookie/session同样重要的技术术语:token。

token什么意思中文(token详解)插图

什么是token

token意思是令牌,是服务端生成的一串字符串,作为客户端要求的标志。

当用户第一次登录时,服务器生成一个token并将此token回到客户端后,客户端只需要带上这个token请求数据,无需再次带用户名和密码。

简单token的组成;uid(用户唯一的身份识别),time(当前时间戳),sign(签名,token十六进制字符串是用哈希算法压缩进制字符串。token泄露)。

因为HTTP这是一个没有状态的协议。它不知道是谁访问了我们的应用程序。在这里,用户被视为客户端。客户端使用用户名和密码进行身份验证,但下次客户端发送请求时,必须再次验证。

通用的解决方案是,当用户要求登录时,如果没有问题,在服务端生成一个记录,可以解释用户登录,然后记录这个记录id发送给客户端,客户端收到这个id存储在cookie下次用户再次向服务器发送请求时,可以带上这个cookie,这样,服务器就会验证cookie查看服务端是否可以找到相应的记录,如果可以,用户已经通过了身份验证,并将用户要求的数据返回到客户端。

以上描述的过程是利用session,那个id值就是sessionid。我们需要存储为用户生成的服务端session,这些session存储在内存、磁盘或数据库中。

基于token身份认证机制

使用token机制的身份验证方法不需要在服务器端存储用户登录记录。一般流程:

  1. 用户名和密码请求登录

  2. token,然后把这个token发送给客户端。

  3. 客户端收到token储存后,可以放在里面cookie或者Local Storage(本地存储)。

  4. token。

  5. token,如果验证成功,请求的数据将返回客户端。

使用token登录认证机制可采用以下方式:

a.用设备mac地址作为token

客户端:客户端登录时获取设备mac地址作为参数传输到服务端

服务端:服务端接收参数后,用变量接收,作为参数token将其保存在数据库中token设置到session中间。客户端每次要求都要统一拦截,传递客户端token和服务器端session中的token相比之下,如果登录成功相同,则拒绝不同。

这样,客户端和服务端统一了唯一的标识,每个设备都有唯一的标识。缺点是需要保存服务器端mac地址;优点是客户端不需要重新登录,只要登录一次就可以使用,服务端会处理加班问题。

b.用sessionid作为token

客户端:客户端携带用户名和密码登录

服务端:接收用户名和密码后进行验证,正确获取本地获取sessionid作为token返回客户端后,客户端只需携带请求数据即可。

这种方法的优点是方便,不需要存储数据,缺点是当session客户端在要求数据之前,必须重新登录到期。

当然,对于一些保密性较高的应用,可以采取两种方式结合的方式,将设备mac同时作为用户名密码token进行认证。

APP利用token身份认证机制

用户正在登录APP时,APP端将加密用户名和密码发送到服务器,服务器将验证用户名和密码。如果验证成功,将生成相应位数的字符生产token存储在服务器中并将其存储在服务器中token返回给APP端。

以后APP再次要求时,应带上需要验证的所有地方token,然后验证服务器端token,成功返回所需结果,失败返回错误信息,让用户重新登录。其中,服务器将提供token设置一个有效期,每次APP请求时应进行验证token和有效期。

token的存储

token可以存储在数据库中,但可以查询token时间过长token丢失(其实token丢了再认证一个就好了,但是不要丢得太频繁,不要让用户没事就去认证)。

为了避免查询时间过长,可以token把它放进内存里。这样的查询速度绝对不是问题,也不用太担心占用内存,即使token它是一个32位字符串,用户数量在百万级或千万级,内存不多。

token的加密

token它很容易泄露。如果不加密,很容易被恶意复制登录。加密通常包括:

  1. token对称加密存储,使用时解密。

  2. sign:将请求URL、时间戳、token三者合并,通过算法加密。

最好用两种方结合使用。

还有一点,在网络层面token使用明文传输非常危险,要用HTTPS协议。

总结

以上就是对于token简要总结用户身份认证过程。希望没有技术背景的产品经理在与开发兄弟沟通时不要被这些技术术语问及。

正文完
 

OKX欧意app

欧意交易app是全球排名第一的虚拟货币交易所。

APP下载   官网地址