首页 > 其他分享 >session验证与jwt验证

session验证与jwt验证

时间:2024-02-24 14:44:06浏览次数:17  
标签:验证 jwt session 密文 服务器 页面

简单谈谈session验证和jwt验证

session验证简化版原理

1.用户rds登录login页面,服务器向用户端发送一个sessionid,
同时服务器创建一个和这个sessionid相关的会话信息(用于该用户下次session验证)
2.用户再次登录或者访问授权页面,将sessionid发送到服务器
3.服务器通过保留的会话信息去验证用户传过来的sessionid
4.验证通过,服务器放行授权页面

jwt验证简化版原理

流程如下:

1.用户rds首次通过login页面登录网站
2.网站后端服务器把 userid+秘钥 通过某种加密算法 加密成一个密文字符串
秘钥是服务器所独有的,仅存在于服务器端。
此加密算法不可逆(短时间无法通过密文算出明文,可能要几百年才能算出,就视为不可逆)
3.`userid`+`密文字符串`叫`jwt_token`,服务器将jwt_token传到用户。
用户端保存jwt_token
4.用户访问授权页面,将jwt_token传到服务器端,服务器将userid拿出来,用加密算法算出一个密文2,
如果密文2和密文字符串1可以匹配,说明是rds这个用户,放行授权页面.

相比于session验证,jwt验证的优点

1.解决跨域访问问题
2.jwt支持多服务器端,因为本身不在服务器端存信息,只将jwttoken存在用户端
等等

标签:验证,jwt,session,密文,服务器,页面
From: https://www.cnblogs.com/rdisheng/p/18031069

相关文章

  • JWT
     1.介绍JWT(JSONWebToken)是一种非常轻量级的规范;使我们能在用户和服务器之间传递安全可靠的消息。JWT本质上是一个袖珍的安全令牌,允许我们以一种结构化的方式,在网络上安全的传输数据。 2.构成一个JWT实际上就是一个字符串,由三部分组合成:头部、载荷与签名。......
  • 实名认证Api接口:验证身份证号码和姓名是否匹配成功
    实名认证是在互联网信息时代中,为了保障身份信息的正确性而进行的一种核验手段。实名认证可以有效防止虚假身份的使用,维护公共利益和个人权益的安全。在很多互联网应用中,实名认证已经成为了一个非常重要的环节。在开发过程中,我们经常需要通过API接口来实现实名认证功能。其中,验证......
  • R语言弹性网络Elastic Net正则化惩罚回归模型交叉验证可视化
    原文链接:http://tecdat.cn/?p=26158原文出处:拓端数据部落公众号 弹性网络正则化同时应用L1范数和L2范数正则化来惩罚回归模型中的系数。为了在R中应用弹性网络正则化。在 LASSO回归中,我们为alpha参数设置一个'1'值,并且在岭回归中,我们将'0'值设置为其alpha参数......
  • JWT认证和授权
    1.JWT的组成部分A.头部(Header):它包含了token的类型,即JWT,以及用于生成签名的算法信息,例如HMACSHA256或RSA。在JWT中,头部通常是一个JSON对象,例如{"alg":"HS256","typ":"JWT"}。B.载荷(Payload):这部分包含了声明(Claim),也就是一些关于实体的陈述,如主题、发行者、过期时间等。这......
  • 一般处理程序中的IRequiresSessionState
    一般处理程序中,还未跑入主程序,就直接断掉了,按F12提示错误:异常详细信息:System.Web.HttpException:请求在此上下文中不可用第一次遇见这种情况,百思不得其解,通过与以前的代码对比,发现少了一个接口IRequiresSessionState,加上后可以了!!! 接口的简介:在一般处理程序中,如果要使用Se......
  • 读论文-基于序列/会话的推荐:挑战,方法,应用和机遇(Sequential/Session-based Recommend
    前言今天读的论文为一篇于2022年7月7日发表在第45届国际ACM信息检索研究与发展会议论文集(Proceedingsofthe45thInternationalACMSIGIRConferenceonResearchandDevelopmentinInformationRetrieval.)的论文,文章主要讲述了序列推荐系统(SRSs)和基于会话的推荐系统(SBRSs......
  • oracle查看某session ip
    先创建个触发器获取ipcreateorreplacetriggeron_logon_triggerafterlogonondatabasebegindbms_application_info.set_client_info(sys_context('userenv','ip_address'));end;可以使用下方语句查看session的ipselect/*+PARALLEL(4)*/a.inst_id,......
  • 验证对象和map赋值一样,多个方法赋值,只要中间没有重新new对象,值就会一直存在
    packageservice;importbase.BaseSpringTest;importcom.bestpay.settle.unity.certify.integration.model.CertifyInfoBO;importlombok.extern.log4j.Log4j2;importorg.junit.Test;importjava.util.HashMap;importjava.util.Map;/***场景测试类**@authorzhangkuankuan......
  • SpringSecurity与JWT如何实现项目端分离认证与授权
    ✅SpringSecurity+JWT实现项目前端分离认证授权✅1.简介SpringSecurity是Spring家族中的一个安全管理框架。相比与另外一个安全框架Shiro,它提供了更丰富的功能,杜区资源也比Shiro丰富。一般来说中大型的项目都是使用SpringSecurity来做安全框架。小项目有Shiro的比较多,因......
  • 给 PyQt5 注册页,添加注册逻辑代码,实现用户的注册验证
    使用PyQt5(PySide2)+SQLAlchemy做一个登录注册页(五)本文将介绍自己用PyQt5+SQLAlchemy做的一个登录注册页,使用邮箱接收验证码,本文介绍是前后端未分离的实现方式,后续将出一个前后端分离的,你可以将PyQt5改为PySide2以获得更宽松的开源协议本文由于涉及到的代码较多,将会是一......