专业汉语词典知识平台,分享汉字词语知识、历史文学知识解答!

励北网
励北网

token是什么意思,token是什么

来源:小易整编  作者:小易  发布时间:2023-02-24 03:08
摘要:token是什么意思,token是什么Token在计算机身份认证中是令牌(临时)的意思,在词法分析中是标记的意思。一般作为邀请、登录系统使用。Token出现的背景在早前的Web应用中,Web基本上就是文档的浏览而已,既然是浏览,作为服务器,...

token是什么意思,token是什么

Token在计算机身份认证中是令牌(临时)的意思,在词法分析中是标记的意思。一般作为邀请、登录系统使用。

token是什么意思,token是什么

Token出现的背景

  1. 在早前的Web应用中,Web 基本上就是文档的浏览而已, 既然是浏览,作为服务器, 不需要记录谁在某一段时间里都浏览了什么文档,每次请求都是一个新的HTTP协议, 就是请求加响应, 尤其是我不用记住是谁刚刚发了HTTP请求,每个请求对我来说都是全新的;

  2. 但是随着交互式Web应用的兴起,像在线购物网站,需要登录的网站等等,马上就面临一个问题,那就是要管理会话,必须记住哪些人登录系统, 哪些人往自己的购物车中放商品, 也就是说我必须把每个人区分开,这就是一个不小的挑战,因为HTTP请求是无状态的,所以想出的办法就是给大家发一个会话标识(session id), 说白了就是一个随机的字串,每个人收到的都不一样, 每次大家向我发起HTTP请求的时候,把这个字符串给一并捎过来, 这样我就能区分开谁是谁了;

  3. 但是客户端只需要保存自身的session id,而服务器端则要保存所有客户端的session id,这对服务器说是一个巨大的开销 , 严重的限制了服务器扩展能力;Token的出现解决了这个问题,因为服务端不需要存储Token的信息,而是通过CPU的计算 + 数据的加密解密再核对Token的方式来验证用户是否合法(即HTTP请求信息有没有被篡改),让服务器内存得到释放;

  4. session id可以被伪造,没有采取加密的方法!!!,一旦攻击者通过session id伪造攻击,就会给服务器带来压力甚至击垮服务器。

  5. Token是通过加密算法(如:HMAC-SHA256算法)来实现session对象验证的,这样使得攻击者无法伪造token来达到攻击或者其他对服务器不利的行为。

Token的作用

节省服务器内存

数据签名防伪造攻击

完全由应用管理,所以它可以避开同源策略,即可以跨域访问

应用场景:单点登录(SSO)单点登录的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统

可以避免 CSRF 攻击

可以是无状态的,可以在多个服务间共享

Token的优势

1. 无状态、可扩展

在客户端存储的Token是无状态的,并且能够被扩展。基于这种无状态和不存储Session信息,负载负载均衡器能够将用户信息从一个服务传到其他服务器上。如果我们将已验证的用户的信息保存在Session中,则每次请求都需要用户向已验证的服务器发送验证信息(称为Session亲和性)。用户量大时,可能会造成 一些拥堵。但是不要着急。使用token之后这些问题都迎刃而解,因为token自己hold住了用户的验证信息。

2. 安全性

请求中发送token而不再是发送cookie能够防止CSRF(跨站请求伪造)。即使在客户端使用cookie存储token,cookie也仅仅是一个存储机制而不是用于认证。不将信息存储在Session中,让我们少了对session操作。

token是有时效的,一段时间之后用户需要重新验证。我们也不一定需要等到token自动失效,token有撤回的操作,通过token revocataion可以使一个特定的token或是一组有相同认证的token无效。


本文地址:百科问答频道 https://www.neebe.cn/wenda/903342.html,易企推百科一个免费的知识分享平台,本站部分文章来网络分享,本着互联网分享的精神,如有涉及到您的权益,请联系我们删除,谢谢!


百科问答
小编:小易整编
相关文章相关阅读
  • 周排行
  • 月排行
  • 年排行

精彩推荐