中国石油网站建设在线第三次作业,湖南手机版建站系统哪个好,企业网站官网模板,怎样推广公司的网站有人或许还停留在它们只是验证身份信息的机制#xff0c;但是它们之间的关系你真的弄懂了么#xff1f;
发展史#xff1a;
Coolie: Netscape Communications 公司引入了 Cookie 概念#xff0c;作为在客户端存储状态信息的一种方法。初始目的是为了解决 HTTP 的无状态性…有人或许还停留在它们只是验证身份信息的机制但是它们之间的关系你真的弄懂了么
发展史
Coolie: Netscape Communications 公司引入了 Cookie 概念作为在客户端存储状态信息的一种方法。初始目的是为了解决 HTTP 的无状态性使网站能够记住用户并保持状态。
Session:
HTTP 1.0 引入了基本的会话管理通过在请求头中添加 Cookie 字段来传递会话标识符。
Token: 随着移动应用和 API 的兴起基于 Token 的身份验证得到了更多关注和应用。OAuth 2.0 的标准化推动了令牌在 web 开发中的应用支持无状态的身份验证和授权。 在以前你去登录一个网站没有个人的分别所以也区不区分也无关紧要但是随着互联网的发展互联网越来越重视你是谁所以cookie就诞生了它是一个存储在客户端的一小段数据当用户登录的时候由服务端发送给客户端并存储在客户端本地这样就可以验证用户信息 但是这样岂不对程序员美滋滋我们假设有一个小穷程序员还有一个老富顶级富豪
账户转钱
老富 小穷 有一天小穷通过技术手段搞到了老富的cookie结果小穷差点吃公家饭 基于cookie这种不安全性session逐渐问世它是一种会话机制用户信息存储在服务器上这样就相对于cookie比较安全 小穷这时候留下了悔恨的眼泪 但是随着时代的发展由于用户越来越多一台服务器已经扛不住了单体架构逐渐被淘汰分布式逐渐登上了历史的舞台这时候问题又来了由于分布式是采取负载均衡的方式采取服务器请求的所以我们不能仅限于一台服务器进行存储session总不能每次发送请求的时候都要进行一次身份验证那么当时就有两种情况可以解决这个问题
1.单独拎出来一个服务器专门作为session的验证
2.在每个服务器上都存储一份session 这两种方式显然对资源的一种浪费数以千万计的用户的session占用的内存可不是一个小数目所以我们的下一个主角又登场了——Token Token是一种轻量级的身份验证和授权机制一般是一小段字符串当每次用户成功登录或请求时服务器会生成一个Token用户ID、角色、权限以及一些元数据通过使用密钥对其进行加密和签名确保安全性下一次客户端访问时携带Token服务器用相同的密钥进行解密和检验签名确保安全性 使用Token的效果既保障了安全问题又避免了资源浪费 Token的优点真的数不胜数列几点
安全性经过了层层加密加密和签名确保完整性和安全性无状态服务器不需要在本地存储会话数据不需要维护会话状态更加容易扩展与分布式部署跨域支持Token可以通过HTTP请求头、URL参数或者Cookie发送灵活性携带自定义的用户信息性能无需服务器存储和查询会话状态提供服务器的性能和响应速度轻量级比传统的会话更加轻量级不需要在服务器上存储状态信息可扩展性方便的扩展以及适应不同的需求单点登录登录一次访问多个关联应用可移植性不依赖于特定的编程语言 Cookie: Cookie是存储在用户浏览器中的小段数据由服务器发送给客户端并存储在客户端本地。它通常用于持久性存储一些用户相关的信息如登录凭证、用户偏好设置等Cookie可以设置过期时间可以是会话级别的在用户关闭浏览器后过期或者是长期的设置特定的过期时间由于存储在客户端Cookie可以在用户访问不同页面时被浏览器自动发送到服务器
Session: 会话是一种服务器机制用于跟踪用户在网站上的活动服务器在用户访问网站时为每个用户创建一个唯一的会话标识Session ID,这个标识存储在Cookie中或者通过URL参数传递然后服务器可以根据会话标识来识别特定的用户并在服务器端存储用户状态信息以便跟踪用户的状态和数据会话数据通常在服务器上存储因此相对安全
Token: Token是一种轻量级的身份验证和授权机制广泛用于构建于API的 应用和单点登录系统用户登录后服务器会颁发一个Token包含有关用户身份的信息和一些元数据这个Token被用户保存并在每次向服务器发送请求时随请求一起发送服务器可以验证Token的有效性并根据Token中的信息执行身份验证和授权Token可以是短期的也可以是长期的但是为了安全性通常会有过期时间