简述

说到cookie,我想前端开发都有听说过吧,cookie的本质就是用来存储数据的,但不能存太多数据。 cookie大多数是用来辨别用户身份的,但不止这一种用途,这就要看具体项目了。 今天我们要说的就是怎么通过cookie,能让服务器知道你就是某用户。 大家都知道http是无状态的,每次请求都是独立的,是没办法直接判断某个请求是否是同一个用户发起, 这时候cookie就起作用的,当用户第一次登陆这个网站的时候可以在响应头设置一个cookie, 下次用户在发起http请求就会自动带上这个cookie,服务器就可以通过这个cookie来找到这个用户的信息。 下面我们来看一下常用的几种验证用户身份的方法

1、使用userId 作为登录用户凭证

在登录成功的时候服务器在cookie存入一个userId,下次这个用户再发http请求的时候 把这个userId带上就可以知道这个用户是谁了。但是这种方法非常不安全, 如果单纯的用一个userId作为凭证,容易被黑客盗用,因为只有一个userId作为凭证,在任何电脑只要把cookid中的userId改成别人的userId就可以直接模拟用户了

2、userId + 签名(sign) 作为登录用户凭证

通过上面知道userId 可以用作用户的登录凭证 单纯的通过userId 判断用户这是非常不安全的。 所以在登录成功的时候服务器在cookie存入一个userId和一个签名值。 userId + 签名(sign是通过userId算出的加密串,是不可逆的),这样身份就不容易盗用, 当用户向服务器发请求的时候,会把userId和签名一起发送给后台, 只有后台验证userId和签名是匹配的就可以判断就是当前用户,而不是别人

3、使用sessionId 作为登录用户凭证

userId + 签名(sign) 作为登录用户凭证,还是会把用户信息曝露出来, 还有一种方法,在用户登录的时候服务器在cookie中存一个sessionId(通过userId算出的加密串),并把这个用户的信息和这个sessionId关联, 用户每次登录的时候带上这个sessionId就可以了, 后台通过这个sessionId就可以查到关联的用户信息

cookie之登录用户凭证相关推荐

  1. php js记住密码功能,jquery.cookie.js实现用户登录保存密码功能的方法_jquery

    本文实例讲述了jquery.cookie.js实现用户登录保存密码功能的方法.分享给大家供大家参考,具体如下: 需要导入的js有jquery.js和jquery.cookie.js 在页面加载时首先尝 ...

  2. uniapp 实现登录功能与获取用户凭证

    uniapp 实现登录功能与获取用户凭证 前言 正文 uniapp 后端 前言 欢迎大佬指正思路. 由于最近面试时,被问到了这种问题,但是我回答的含糊不清. 虽然以前做过这些功能,但是一直都没有去总结 ...

  3. Cookie + Session登录-Token登录-SSO 单点登录-OAuth 第三方登录

    文章目录 1.Cookie + Session 登录 2. Cookie + Session 存在的问题 3.Token 登录认证 1. Token 机制实现流程 2. Token 机制的特点 3. ...

  4. cookie自动登录

    一.什么是用户自动登录? 对于我们的网站向已注册用户提供某些专门的服务,比如网上购物.在线下载.收费浏览等等,就会要求用户在使用这些服务之前进入登录页面,输入用户名和密码,并进行验证. 如果用户经常访 ...

  5. 域用户组成员 导出_隐私安全,黑客利用Mimikatz提取Windows用户凭证

    一.前言一.mimikatz简介 是法国人Gentil Kiwi编写的一款windows平台下的神器,它具备很多功能,其中最亮的功能是直接从 lsass.exe 进程里获取windows处于activ ...

  6. 管理员访客身份登录用户账户,java web/springboot/mybatis实现只能看用户信息但不允许修改

    上线的项目,不可避免的会遇见用户提出的bug,这时候我们可能需要去用户的页面重现用户所说的Bug,为了安全,最好进入用户页面的时候不能修改用户的数据,只能查看. 对于上述需求实现的方法有多种: 1:根 ...

  7. python模拟登录页面下载_Python爬虫实战入门四:使用Cookie模拟登录——获取电子书下载链接...

    在实际情况中,很多网站的内容都是需要登录之后才能看到,如此我们就需要进行模拟登录,使用登录后的状态进行爬取.这里就需要使用到Cookie. 现在大多数的网站都是使用Cookie跟踪用户的登录状态,一旦 ...

  8. C/S框架-WebService架构用户凭证(令牌)解决方案

    C/S框架-WebService架构用户凭证(令牌)解决方案 http://www.csframework.com/archive/5/arc-5-20110520-1504.htm C/S框架高级版 ...

  9. COOKIE伪造登录网站后台

    1.关于XSS(跨站脚本攻击)和CSRF(跨站请求伪造)的知识,xss表示Cross Site Scripting(跨站脚本攻击),它与SQL注入攻击类似,SQL注入攻击中以SQL语句作为用户输入,从 ...

最新文章

  1. 多核分布式队列的实现:“偷”与“自私”的运用(4)
  2. mysql 的 VARCHAR VARCHAR2
  3. Python编程语言学习:判断变量是否为NONE或False的几种常见写法(if not用法教程)
  4. C#常用类库----CSV文件操作类
  5. 记录——《C Primer Plus (第五版)》第七章编程练习第八题
  6. 我的世界java1.15.2光影_我的世界1.15.2简单forge服务器搭建笔记
  7. M1 Mac 是否入手,先了解这些常用软件兼容性!!
  8. android 打地鼠,Android实现打地鼠小游戏
  9. android 阻尼动画,Android下拉阻尼效果实现原理及简单实例
  10. Badboy 录制脚本提示“当前页面的脚本发生错误”解决
  11. [Noi1999]钉子和小球
  12. [Axure]QQ注册页面低保真原型
  13. IBM bladecenter H刀箱BladeCenter北电交换机VLAN配置
  14. 数据堂-数加加众包任务招募啦~!说方言,来赚钱
  15. [转] JS实例操作QQ空间自动点赞方法
  16. oracle11g exp 00028,解决Linux系统下exp导入EXP-00028异常
  17. **区块链培训步入标准化阶段,比特大学开启系统性学习课程**
  18. 2017.10.24队内互测——压轴出场的互测终曲|(*_-)
  19. getchar ,putchar,gets,puts的辨析
  20. 南京VI设计,企业VI设计,视觉VI识别系统塑造出独特的企业形象

热门文章

  1. python学会后再学c_目前python熟练 ,想再学golang 需要先学c吗?
  2. 小马智行最新RoboTaxi来了!彭军:对方向有着前所未有的笃定
  3. Bengio实验室推出开源AI药物研发平台,唐建领队、清北上交学生参与开发
  4. 在任天堂Switch上倒贴30块钱“加班”,我一个程序员还觉得很刺激
  5. 冠状病毒如何杀灭最高效?这里有一份几十年的实验汇总
  6. 报名 | 腾讯量子实验室发起Alchemy竞赛,推动分子性质的AI预测研发
  7. 如何使用charles对Android Https进行抓包
  8. C++ BigInt模板手打
  9. 使用深度学习方法实现面部表情包识别
  10. RTP:实时应用程序传输协议