关于oauth2中为什么不直接返回token而是传授权码code

本文详细介绍了OAuth认证流程中的安全措施,包括如何避免客户端token泄露风险,以及客户端与授权服务器间的安全通信机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.客户端会暴露 token
授权服务器是会根据客户端传来的 redirect_url 返回给客户端 3xx 重定向状态码,然后客户端再把授权码 code 传给客户端服务器,首先前端(网页有源代码,手机app反编译)的都是不安全的,直接将 token 传给客户端会把 token 暴露

 


2.授权服务器不会直接发 token
所有授权客户都需要向授权中心注册获取 appkey 与 appscrete,其中 appkey 为公开的而 appscrete 是只有客户端与服务器可见的,更重要的是 appscrete 只能存在客户端服务器不能直接存在客户端上不然同样会暴露。
因此客户端向授权中心申请授权时会发送自己的 appkey,然后授权中心会返回授权码,经过重定向到客户端服务器,客户端服务器申请授权时要将 appscrete 一起传给授权服务器,授权服务器一一对比确认无误后才会发放 token。
如果客户端只发送 appkey 就能直接获取 token,那么所有人都可以模拟该客户端来获取 token 了,这得多可怕

 

 

转载于:https://www.cnblogs.com/ming-szu/p/9391351.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值