首页 > 其他分享 >Cookie和Session和Token区别与联系

Cookie和Session和Token区别与联系

时间:2023-04-07 12:11:15浏览次数:45  
标签:存储 浏览器 token 密码 Token Session Cookie

参考b站up技术蛋老师视频:https://www.bilibili.com/video/BV1ob4y1Y7Ep/

以下截取视频下评论的总结:

ikkiday:

Session 是一种能力:是服务器见鬼说鬼话,见人说人话的能力
Token 是一个字符串凭证:和你的各种证件一样功能的凭证,JWT 恰好是其中一种格式
Cookie 是浏览器中的一个存储技术:历史很久了,不用这个也可以

关于token的安全问题,比如被他人获取冒充:

服务端不存储Token。如果是客户端泄露的话,就看token 是如何存储的,上面说了Cookie 是一种存储技术。同样,token 也可以存储到Cookie,如果存储到Cookie里的token 会泄露,那么存储到Cookie 里的sessionId 同样会泄露。如果不使用Cookie 存储,浏览器还可以使用localStorage, sessionStorage. 客户端可以使用 TEE, KeyStore 等存储方案。

关于copy走token的问题,要有一个前提,用户有义务保证自己的密码安全,不告知他人;同样也有义务保证自己的设备安全,及时锁屏等。现在浏览器设置里面查看自动保存的密码,是需要输入开机密码的,我是建议浏览器在打开控制台功能时,也要输入密码。
当然也可以做一些加固措施,比如把token加密后,存储到localstorage里面,提高窃取成本。

江心明月照:

1.可以做加密,不暴露明文。2.时间戳+token+url做加盐处理,盐值自己定的,不好破解。3.验证ip等。4.https即使被借货也无法读取。

再有token有效期不宜过长。最后,再怎么样token也有被截取的可能,以上措施只是增加让截取成本而已。关键在于token最大的目的就是保持登陆状态,减少用户操作;保密性很强的内容还是要靠用户名密码来验证,比如支付,私密空间等,必须输入密码,不可能用token来验证

标签:存储,浏览器,token,密码,Token,Session,Cookie
From: https://www.cnblogs.com/dirgo/p/17295751.html

相关文章

  • go cookie && session
    前言: HTTP协议是无状态的,所以用户的每一次请求都是无状态的,不知道在整个Web 操作过程中哪些连接与该用户有关。应该如何来解决这个问题呢?Web里面经典的解决方案是Cookie和Session。正文:cookie机制是一种客户端机制,把用户数据保存在客户端,而Session机制是一种服......
  • JavaWeb-Cookie-16课-2023-04-06
    packagecom.feijian.servlet;importjavax.servlet.ServletException;importjavax.servlet.http.Cookie;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importjava.io.IOExc......
  • JWT 实现登录认证 + Token 自动续期方案
    要实现认证功能,很容易就会想到JWT或者session,但是两者有啥区别?各自的优缺点?应该Pick谁?夺命三连区别基于session和基于JWT的方式的主要区别就是用户的状态保存的位置,session是保存在服务端的,而JWT是保存在客户端的认证流程基于session的认证流程用户在浏览器中输入用户名和密码,服务......
  • org.apache.shiro.session.InvalidSessionException: java.lang.I
    1.遇到以下异常,找了好长时间,终于解决,报的异常如下:七月07,20173:02:16下午org.apache.catalina.core.StandardWrapperValveinvoke严重:Servlet.service()forservlet[SpringMVC]incontextwithpath[/IMP]threwexception[org.apache.shiro.session.InvalidSessionEx......
  • cbv分析,模板,请求与响应,session及源码分析,闪现,请求扩展
    cbv分析,模板,请求与响应,session及源码分析,闪现,请求扩展cbv分析cbv编写视图类的方法#导入flaskfromflaskimportFlask,request#导入cbv需要的MethodViewfromflask.viewsimportMethodView#实例化flask对象app=Flask(__name__)app.debug=True#编写cbvclass......
  • Zookeeper Session源码
    我们说客户端与服务端建立连接交互的时候会创建一个Session与之对应,那假设客户端请求来了,服务端是如何处理的?Session又是如何创建出来的?我们先来看第一个问题:服务端如何处理客户端发来的请求?一、如何处理请求所谓的请求全称是网络请求,涉及到网络就少不了Socket通信,ZooKeep......
  • flask:cbv源码分析、模板语法、请求与响应、session及源码分析、闪现(flash)、请求扩展
    目录一、cbv源码分析1.1基于类的视图写法1.2源码分析1.3分析源码,查找不传别名的时候为什么函数名会变成别名1.4flask的路由注册使用装饰器,如果写了一个登录认证装饰器,那么应该放在路由装饰器上还是下?1.5dispatch_request讲解1.6知识点总结二、模板语法2.1py2.2html三、请......
  • flask框架02 cbv分析 模板 请求与响应 session 闪现 请求拓展
    今日内容详细目录今日内容详细1cbv分析1.1源码分析2模板2.1py文件2.2html页面3请求与响应4session及源码分析4.1session的使用4.2源码分析5闪现6请求拓展1cbv分析#基于类的视图,写法fromflaskimportFlask,requestfromflask.viewsimportView,MethodView......
  • cbv分析、模板、请求与响应、session及源码分析、闪现、请求扩展
    cbv分析#基于类的视图,写法fromflaskimportFlask,requestfromflask.viewsimportView,MethodViewapp=Flask(__name__)app.debug=True#视图类,继承MethodView,类中写跟请求方式同名的方法即可,之前学的所有都一致classIndexView(MethodView):defget(s......
  • dash-board的kube-config文件怎么设置 就是比kube-proxy类似多了一个token选项
    https://kubernetes.io/zh/docs/reference/access-authn-authz/rbac/#使用RBAC鉴权RBAC是基于角色的访问控制(Role-BasedAccessControl)https://kubernetes.io/zh/docs/reference/access-authn-authz/authorization/#鉴权概述1.1:在指定namespace创建账户:#kubectlcre......