oauth2学习

第三方授权规范通常涉及通过授权码换取access_token的过程。用户在微信界面授权后,客户端服务器使用code向微信服务器请求access_token,因为直接返回的token可能不安全。code通过后端请求获取,具有不可见性,并且每个code只能兑换一次,确保了即使被截获,也能通过失效机制保护用户数据的安全。
摘要由CSDN通过智能技术生成

1.是个什么东西?
第三方授权规范,比如你的网站需要获取微信用户数据,就需要跳转到微信的界面授权
2.怎么授权?
简单来说 客户端先提供微信授权的url,用户跳转后 有登录和同意授权的步骤,
同意授权后,我们的客户端服务器会向微信授权服务器请求一个授权码(code),
用户同意授权后会重定向到我们自己网页,并携带这个code
接着,我们的服务器再拿着这个code去微信的授权服务器获取access_token,拿到这个token后才可以去微信访问特点的资源

疑问:
1.为什么不直接返回token 而是要先拿到code 再用code去换token?

首先token是用户同意授权重定向到自己的页面时携带在url中的,也就是说很不安全,如果直接返回了token,那用户和其他人都能直接拿到这个token
而拿到code去换token是通过后端请求获取的,具有不可见性(https协议)
另外即使code被黑客拿到了,由于token只能被兑换一次,当用户出现token兑换失败,证明code已经被黑客窃取了,授权服务器会重新授权,之前的token也就失效了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值