基础入门-网站协议身份鉴权OAuth2安全Token令牌JWT值Authirization标头
知识点:
1、网站协议-http/https安全差异(抓包)
2、身份鉴权-HTTP头&OAuth2&JWT&Token
一、演示案例-网站协议-http&https-安全测试差异性
1、加密方式
HTTP:使用明文传输,数据在传输过程中可以被任何人截获和查看。

HTTPS:通过SSL/TLS协议对数据进行加密,确保数据在传输过程中不被第三方截获和篡改。

2、身份验证
HTTP:不需要进行身份验证,任何人都可以访问网站。
HTTPS:通过数字证书和SSL/TLS协议验证服务器的身份,防止"中间人攻击"。(ssl是早期的加密协议,现在主流都用TLS来加密,可以理解为SSL的升级版)
3、端口号
HTTP:默认使用80端口。
HTTPS:默认使用443端口,提供更高的安全性。
二、演示案例-身份鉴权-Authorization&Token&JWT&OAuth
1、身份验证鉴权技术
Cookie,Session,Token,JWT,oauth2等
参考:https://mp.weixin.qq.com/s/Z6rt_ggCA8dNVJPgELZ44w
2、应用场景
Cookie+Session简单,建议在内网使用;
Token相对完善,推荐在外网使用;
JWT推荐使用,常用在SSO单点登录中;
OAuth灵活方便,对于第三方系统登录联动更友好(有些系统或者APP应用会支持第三方登录,例如微信、微博账户登录等,这样的方式基本都用这个OAuth。)

3、OAuth2技术
授权框架,使网站和Web应用程序能够请求对另一个应用上的用户帐户进行有限访问。至关重要的是,OAuth允许用户授予此访问权限,而无需向请求应用程序公开其登录凭据。这意味着用户可以微调他们想要共享的数据,而不必将其帐户的完全控制权移交给第三方(A网站允许B网站的用户登录)
四种验证模式:
authorization_code 授权码模式(最常见)
implicit code 简单模式
password 密码模式
client_credentials 客户端模式
授权码模式流程








安全漏洞问题
1、redirect_url 校验不严格导致code被劫持到恶意网站(fuzz各种bypass方式)
2、client_id与redirect_url 不一致造成滥用劫持
3、A应用生成的code可以用在B应用上
4、state未设置csrf防护,导致csrf风险
5、scope提权,将低scope权限的code用于高权限场景
6、HTTP劫持,网络层中间人攻击
7、点击劫持:通过点击劫持,恶意网站会在以下位置加载目标网站: 透明 iFrame(参见 [ iFrame ])覆盖在一组虚拟的顶部 精心构造的按钮直接放置在 目标站点上的重要按钮。当用户单击可见的 按钮,他们实际上是在单击一个按钮(例如“授权” 按钮)在隐藏页面上。
4、Authorization头
Authorization是HTTP 提供一个用于权限控制和认证的通用框架,可能有不少小伙伴会感到疑惑"Cookie不就可以做权限控制和认证吗? ",确实如此! Cookie确实是在单个系统内认证用户身份、保持会话状态的有效方式,但如果涉及到多个系统、多个域名或多个应用程序之间认证、授权呢? 使用Cookie的话该如何办呢?是不是想想都头皮发麻呢?为解决这个问题, HTTP急需一种更通用、更灵活的身份验证和授权机制,使跨系统和跨域的身份验证和授权管理更容易,这对于现代应用程序中的多样化环境非常重要,就这样Authorization诞生了!
Authorization是一种通用的、标准化的权限控制和认证的通用框架,它能够使跨系统和跨域的身份验证和授权管理更容易,使不同应用程序之间能够更轻松地实现单点登录(SSO)、用户身份验证和授权控制等。
参考:https://juejin.cn/post/7300812626279251987
授权方案
1、Basic认证
2、Digest认证
3、Bearer认证
4、JWT认证
5、API密钥认证
6、双因素认证
7、其他一些认证方式

安全漏洞问题
JWT攻防,Token劫持等
相关文章:
基础入门-网站协议身份鉴权OAuth2安全Token令牌JWT值Authirization标头
知识点: 1、网站协议-http/https安全差异(抓包) 2、身份鉴权-HTTP头&OAuth2&JWT&Token 一、演示案例-网站协议-http&https-安全测试差异性 1、加密方式 HTTP:使用明文传输,数据在传输过程中可以被…...
C语言基础系列【3】VSCode使用
前面我们提到过VSCode有多么的好用,本文主要介绍如何使用VSCode编译运行C语言代码。 安装 首先去官网(https://code.visualstudio.com/)下载安装包,点击Download for Windows 获取安装包后,一路点击Next就可以。 配…...
MySQL-5.7.44安装(CentOS7)
目录 1、下载安装包并解压 2、创建数据目录与日志目录 3、设置环境变量 4、刷新环境变量 5、执行初始化 6、创建配置文件目录 7、新建配置文件 8、为安装目录赋予可执行权限 9、创建服务启动脚本 10、启动服务并将启动脚本加入开机自启动 11、查看服务状态 12、创建…...
服务端与多客户端照片的传输,recv,send
一、照片传输 server.c /* * 文件名称:server.c * 创 建 者: * 创建日期:2025年02月07日 * 描 述: */ #include <stdio.h> #include <sys/types.h> /* See NOTES */ #include <sys/socket.h…...
JS实现灯光闪烁效果
在 JS中,我们可以实现灯光闪烁效果,这里主要用 setInterval 和 clearInterval 两个重要方法。 效果图 源代码 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>灯闪烁效果<…...
SpringCloud面试题----Nacos和Eureka的区别
功能特性 服务发现 Nacos:支持基于 DNS 和 RPC 的服务发现,提供了更为灵活的服务发现机制,能满足不同场景下的服务发现需求。Eureka:主要基于 HTTP 的 RESTful 接口进行服务发现,客户端通过向 Eureka Server 发送 HT…...
verilog练习:i2c slave 模块设计
文章目录 前言1. 结构2.代码2.1 iic_slave.v2.2 sync.v2.3 wr_fsm.v2.3.1 状态机状态解释 2.4 ram.v 3. 波形展示4. 建议5. 资料总结 前言 首先就不啰嗦iic协议了,网上有不少资料都是叙述此协议的。 下面将是我本次设计的一些局部设计汇总,如果对读者有…...
3.5 Go(特殊函数)
目录 一、匿名函数 1、匿名函数的特点: 2、匿名函数代码示例 2、匿名函数的类型 二、递归函数 1. 递推公式版本 2. 循环改递归 三、嵌套函数 1、嵌套函数用途 2、代码示例 3、作用域 & 变量生存周期 四、闭包 1、闭包使用场景 2、代码示例 五、De…...
Android的MQTT客户端实现
在 Android 平台上实现 MQTT 客户端的完整技术方案,涵盖基础实现、安全连接、性能优化和最佳实践: 一、技术选型与依赖配置 推荐库 Eclipse Paho Android Service(官方维护,支持后台运行) gradle 复制 // build.gradl…...
国产编辑器EverEdit - 编辑辅助功能介绍
1 编辑辅助功能 1.1 各编辑辅助选项说明 1.1.1 行号 打开该选项时,在编辑器主窗口左侧显示行号,如下图所示: 1.1.2 文档地图 打开该选项时,在编辑器主窗口右侧靠近垂直滚动条的地方显示代码的缩略图,如下图所示&…...
WPF 在后台使TextBox失去焦点的方法
在软件设计开发的时候,偶尔会遇到在后台xaml.cs后台中,要将TextBox控件的焦点取消或者使TextBox控件获取焦点,下面介绍讲述一种简单的“只让特定的 TextBox 失去焦点”方法: 前端xaml代码示例: <StackPanel Orientation"…...
工作案例 - python绘制excell表中RSRP列的CDF图
什么是CDF图 CDF(Cumulative Distribution Function)就是累积分布函数,是概率密度函数的积分。CDF函数是一个在0到1之间的函数,描述了随机变量小于或等于一个特定值的概率。在可视化方面,CDF图表明了一个随机变量X小于…...
CTF SQL注入学习笔记
部分内容来自于SQL注入由简入精_哔哩哔哩_bilibili SQL语句 1.mysqli_error():返回最近调用函数的最后一个错误描述 语法:mysqli_error(connection) 规定要使用的Mysql连接; 返回一个带有错误描述的字符串。如果没有错误发生则返回 "" 2…...
element-plus el-tree-select 修改 value 字段
element-plus el-tree-select 修改 value 字段 ,不显示label 需要注意两个地方: <el-tree-select v-model"value" :data"data" multiple :render-after-expand"false" show-checkbox style"width: 240px" …...
基于javaweb的SpringBoot小区智慧园区管理系统(源码+文档+部署讲解)
🎬 秋野酱:《个人主页》 🔥 个人专栏:《Java专栏》《Python专栏》 ⛺️心若有所向往,何惧道阻且长 文章目录 运行环境开发工具适用功能说明 运行环境 Java≥8、MySQL≥5.7、Node.js≥14 开发工具 后端:eclipse/idea/myeclipse…...
SpringBoot学习之shardingsphere实现分库分表(基于Mybatis-Plus)(四十九)
一、shardingsphere介绍 ShardingSphere是一款起源于当当网内部的应用框架。2015年在当当网内部诞生,最初就叫ShardingJDBC。2016年的时候,由其中一个主要的开发人员张亮,带入到京东数科,组件团队继续开发。在国内历经了当当网、电信翼支付、京东数科等多家大型互联网企业的…...
23.PPT:校摄影社团-摄影比赛作品【5】
目录 NO12345 NO6 NO7/8/9/10 单元格背景填充表格背景填充文本框背景填充幻灯片背景格式设置添加考生文件夹下的版式 NO12345 插入幻灯片和放入图片☞快速:插入→相册→新建相册→文件→图片版式→相框形状→调整边框宽度左下角背景图片:视图→…...
Baumer工业相机堡盟相机的相机传感器芯片清洁指南
Baumer工业相机堡盟相机的相机传感器芯片清洁指南 Baumer工业相机1.Baumer工业相机传感器芯片清洁工具和清洁剂2.Baumer工业相机传感器芯片清洁步骤2.1、准备步骤2.2、清洁过程1.定位清洁工具2.清洁传感器3.使用吹风装置 Baumer工业相机传感器芯片清洁的优势设计与结…...
Spring Boot 整合 JPA 实现数据持久化
目录 前言 一、JPA 核心概念与实体映射 1. 什么是 JPA? 2. JPA 的主要组件 3. 实体映射 4. 常见的字段映射策略 二、Repository 接口与自定义查询 1. 什么是 Repository 接口? 2. 动态查询方法 3. 自定义查询 4. 分页与排序 三、实战案例&…...
快速在wsl上部署学习使用c++轻量化服务器-学习笔记
知乎上推荐的Tinywebserver这个服务器,快速部署搭建,学习c服务器开发 仓库地址 githubhttps://link.zhihu.com/?targethttps%3A//github.com/qinguoyi/TinyWebServerhttps://link.zhihu.com/?targethttps%3A//github.com/qinguoyi/TinyWebServer 在…...
如何在MATLAB中免费实现亚像素级变形测量:Ncorr 2D完整指南 [特殊字符]
如何在MATLAB中免费实现亚像素级变形测量:Ncorr 2D完整指南 🚀 【免费下载链接】ncorr_2D_matlab 2D Digital Image Correlation Matlab Software 项目地址: https://gitcode.com/gh_mirrors/nc/ncorr_2D_matlab 你是否曾为材料变形测量而烦恼&am…...
# React 发散创新:从状态管理到组件化架构的极致实践在前端开发领域,React
React 发散创新:从状态管理到组件化架构的极致实践 在前端开发领域,React 已经成为构建现代 Web 应用的事实标准。但你是否曾思考过——如何让 React 不只是“写页面”,而是真正成为驱动业务逻辑的核心引擎? 本文将带你突破常规思…...
YOLO训练结果results.csv全字段解读:从epoch到lr/pg2,每个数字背后的调参玄机
YOLO训练结果results.csv全字段解读:从epoch到lr/pg2,每个数字背后的调参玄机 当你盯着YOLO训练结束后生成的results.csv文件,是否曾感到困惑——这些密密麻麻的数字究竟在诉说什么故事?作为模型训练的"黑匣子记录仪"&a…...
为什么每次招人,企业HR和管理者心里都没底?招错人会带来哪些严重后果?
这是众多企业面临的招聘痛点。根据行业数据,企业招错一名员工的平均成本高达该员工年薪的30%-150%,不仅造成直接经济损失,更会导致团队效率下降、管理成本增加、项目延期等一系列连锁反应。许多企业陷入"招聘-试用-不合适-再招聘"的…...
三步解锁Degrees of Lewdity中文本地化版本无缝体验:完整指南
三步解锁Degrees of Lewdity中文本地化版本无缝体验:完整指南 【免费下载链接】Degrees-of-Lewdity-Chinese-Localization Degrees of Lewdity 游戏的授权中文社区本地化版本 项目地址: https://gitcode.com/gh_mirrors/de/Degrees-of-Lewdity-Chinese-Localizati…...
STEP3-VL-10B轻量级多模态模型:硬件要求与配置建议
STEP3-VL-10B轻量级多模态模型:硬件要求与配置建议 想在自己的电脑或服务器上跑一个能看懂图片、能聊天、还能做推理的AI模型吗?今天要聊的STEP3-VL-10B,就是一个让你用相对亲民的硬件就能玩转的多模态模型。 你可能听说过那些动辄几百亿、…...
pdf2htmlEX色彩管理专家指南:高级色彩校准技术
pdf2htmlEX色彩管理专家指南:高级色彩校准技术 【免费下载链接】pdf2htmlEX Convert PDF to HTML without losing text or format. 项目地址: https://gitcode.com/gh_mirrors/pd/pdf2htmlEX 想要将PDF转换为HTML时保持完美的色彩还原吗?pdf2html…...
HunyuanVideo-Foley镜像解析:xFormers视频推理加速在音效生成中的复用机制
HunyuanVideo-Foley镜像解析:xFormers视频推理加速在音效生成中的复用机制 1. 镜像概述与核心价值 HunyuanVideo-Foley镜像是一款专为视频与音效生成任务优化的私有部署解决方案。基于RTX 4090D 24GB显存和CUDA 12.4深度调优,该镜像将视频生成与Foley音…...
ESP32电池电量检测实战:MicroPython ADC配置避坑指南(附完整代码)
ESP32电池电量检测实战:MicroPython ADC配置避坑指南(附完整代码) 当你在凌晨三点调试一个即将交付的物联网设备时,突然发现电量显示在30%到70%之间随机跳动——这种场景对嵌入式开发者来说再熟悉不过了。本文将带你深入ESP32的AD…...
OpenClaw进阶配置:GLM-4.7-Flash模型参数调优实战
OpenClaw进阶配置:GLM-4.7-Flash模型参数调优实战 1. 为什么需要关注模型参数调优 去年冬天,当我第一次用OpenClaw自动整理全年会议纪要时,发现AI助手生成的摘要总带着奇怪的"官方腔调"——明明只是内部讨论,输出却像…...
