安全认证全解析:从Basic到OAuth

One Time Password一次性密码

Basic Authentication 基本认证

是http协议内置的最简单的身份认证方式,常用与内网接口、测试环境、简单后台鉴权。

公网必须用HTTPS

客户端将用户名和密码拼接成字符串(admin:123456 base64编码: YWRtaW46MTIzNDU2)

放在请求头Authorization中,格式:Basic 编码后的字符串

如: Authorization: Basic YWRtaW46MTIzNDU2

服务端拿到后解码,校验用户名和密码是否正确

校验通过则正常相应,失败返回401 Unauthorized

服务器验证返回相应的资源和处理结果

Token Authentication 令牌认证

方案1:JWT(无状态Token)

方案2: 随机Token+Redis(有状态)

小型项目、简单系统:用JWT

大型项目、需要注销、踢人:Redis+随机Token

用户提交账号密码,登录成功返回令牌(如:JWT)

前端把Token存在LocalStorage/SessionStorage/Cookie中

前端端每次请求请求头带上Token

放在请求头Authorization中,格式:Bearer token

如果令牌是有效的就认为客户已经登录过了

从令牌中提取客户的非敏感关键信息(如:用户编号)

根据用户信息查询用户所拥有的资源返回结果

OAuth Authentication 第三方授权登录

OAuth不是登录,是授权

微信登录、QQ登录、Github登录、Google登录

OAuth不传递账号密码,只传递授权凭证

OAuth里常见的三个令牌

code(授权码):一次性,换token用

access_token:短期,用来访问用户资源

refresh_token: 长期,access_token过期后刷新用

用户点击微信登录

跳转到微信授权页

用户同意授权

微信返回授权码code给客户端

客户端拿着code去微信换取access_token拉取用户信息

登录成功,客户端自己生成JWT/Session给用户

API Key Authentication

相关推荐
画中有画4 小时前
软件架构中质量属性(性能、安全、可扩展性)的权衡设计
java·运维·安全
唐山柳林5 小时前
筑牢“数字堤坝”,守住安全底线——洞庭湖堤防安全监测平台为蓄滞洪区安上“智慧大脑”
安全
hoaxxcj5 小时前
零能力 Agent 骗过评测实测:朴素 harness 被骗 75%,加固后仍漏掉「抄答案」
网络·安全·大模型·工程化·ai实战
Tokenge5 小时前
AI 前沿日报|2026.08.19:模型安全按下减速键,智能体进入“可控落地”新阶段
人工智能·安全
东方小月5 小时前
从零开发一个 Coding Agent(十三):实现安全的 read 文件读取工具
前端·人工智能·全栈
Zach_菠萝侠6 小时前
【DeepSeek Harness 研究】进化方向4:安全加固 思考、设计与实现
开发语言·安全·deepseek
猫咪宝妖6 小时前
【信息安全工程师】网络与信息安全理论
网络·安全·web安全
恒拓高科WorkPlus7 小时前
信创即时通讯上线前要验证哪些能力?BeeWorks选型与验证指南
大数据·安全
欧阳天羲7 小时前
【升级版】AI毫米波雷达扫描+视觉双鉴激光灭蚊机器人|360°全域侦测+超低误杀+人体安全防护(ESP32+YOLOv8全套开源)
人工智能·安全·机器人
进制树8 小时前
【飞控开发实战·⑲】ROS2无人机开发环境搭建:Jazzy安装、工作空间与hello_drone节点实战
开发语言·安全·无人机·课程设计