安全认证全解析:从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

相关推荐
Flynt9 分钟前
PHP 9.2 分 RCE 的补丁比公告早公开 3 天,我读完 389 个文件的 diff,也把"死在代码之前"跑了出来
安全·php·源码
2601_9672127219 分钟前
可移动轨道插座安全结构、场景适配与安装技术说明
大数据·经验分享·安全
凯基迪科技33 分钟前
STM32G系列(G0/G4)芯片解密程序提取RDP读保护解析
网络·stm32·安全
科技小登1 小时前
CC攻击防护哪家好?Web安全加速、WAF与Bot管理同入口方案对比
网络·安全·web安全
loulanyue_1 小时前
密度定律驱动端侧AGI跃迁,用物理级解耦破解自主网络攻击之困:迈向安全可控的通用智能——读清华大学刘知远教授CNCC2026网络生态治理论坛演讲实录
网络·安全
安教安全员通关宝2 小时前
2026年浙江安全员C2证考试题库+答案+解析
安全
QY_Research_2 小时前
全球钥匙联锁系统 市场规模及CAGR5.2%深度分析
大数据·人工智能·物联网·安全·机器人
上海广测检测科技有限公司3 小时前
无线智能电表与欧盟 CRA:RED、MID 三线分工与网络安全义务清单
经验分享·安全
喵了几个咪3 小时前
GoWind CMS 拆解:给 NL2SQL 上四把锁——智能问数的安全边界
开发语言·后端·安全·微服务·golang·gowind
瑞和数智3 小时前
瑞和数智战略布局建设可信数据空间,重塑大模型安全底座
安全