[Oauth] Oauth2.0中的授权码模式
2023-02-18 15:41:26 时间
这种模式是我们常见的oauth形式,例如第三方登陆,qq,微博等,都是使用的授权码模式,也是很多网站系统对外提供的接口形式
这种模式大体是需要两步,一般是先获取code , 获取完code后,拿着code去获取access_token
例如下面这俩接口:
1. 获取code
https://b.com/oauth/authorize?
response_type=code&
client_id=CLIENT_ID&
redirect_uri=CALLBACK_URL&
scope=read
2. code是在回调地址CALLBACK_URL,给回调回来的,一般这个回调地址会在b网站系统申请client_id等的地方,进行设置保存的,不是随便都可以的
我们在CALLBACK_URL中接收到code ,然后拿着code去获取access_token
https://b.com/oauth/token?
client_id=CLIENT_ID&
client_secret=CLIENT_SECRET&
grant_type=authorization_code&
code=AUTHORIZATION_CODE&
redirect_uri=CALLBACK_URL
这是oauth2.0的建议方式 , 但是有一些系统并不是直接传递的client_secret ,而是把他和参数拼接一起,加密后作为签名,放在参数里,b系统对参数进行校验,这样更安全一点。
相关文章
- Protractor - 环境设置
- RST Methodology: “Responsible Tester”
- Testing and Checking Refined
- Exploratory Testing 3.0 - 探索式测试
- 博客搬家
- MQ系列10:如何保证消息幂等性消费
- MQ系列9:高可用架构分析
- 微服务12:流量策略
- 微服务11:熔断、降级的Hystrix实现(附源码)
- MQ系列8:数据存储,消息队列的高可用保障
- Redis系列11:内存淘汰策略
- 架构与思维:熔断限流的一些使用场景
- Redis系列10:HyperLogLog实现海量数据基数统计
- MQ系列7:消息通信,追求极致性能
- 微服务10:系统服务熔断、限流
- 追求性能极致:客户端缓存带来的革命
- 追求性能极致:Redis6.0的多线程模型
- MQ系列6:消息的消费
- MQ系列5:RocketMQ消息的发送模式
- MQ系列4:NameServer 原理解析