[Oauth] Oauth2.0中的授权码模式

这种模式是我们常见的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系统对参数进行校验,这样更安全一点。

猜你喜欢

转载自www.cnblogs.com/taoshihan/p/12539590.html