统计
  • 建站日期:2022-01-17
  • 文章总数:45275 篇
  • 分类总数:165 个
  • 最后更新:今天

PHP第三方登录设计教程

PHP第三方登录设计教程
首页 软件编程 正文
广告
PHP第三方登录设计教程

1. oAuth2.0原理
网站为了方便用户快速的登录系统,都会提供使用知名的第三方*台账号进行快速登录的功能,第三方登录都是基于oAuth2.0标准来实现的。下面详细分析【基于账号密码授权】和【基于oAuth2.0标准授权】的原理和oAuth2.0授权的优点。

1.1 账号密码授权方式
用户到网站发起使用其他*台账号登录的指令,第三方*台网站就向用户索取账号和密码,用户将账号和密码提供第三方网站之后,网站使用用户提供的账号和密码去登录服务商,取回用户的信息。这就是使用账号和密码授权登录的流程。
存在的问题:
一、服务商的账号和密码都泄漏给了第三方*台,导致**性问题;
分析:假设服务商是微信,没有人会愿意把微信账号和密码告诉当前访问的网站,一旦当前网站发生信息泄漏,微信账号和密码都会丢失;

二、用户要收回授权,只能通过修改密码来实现,若是有多个第三方网站都是用
同一个服务商授权登录,那么所有第三方网站的授权都被收回来了;
分析:假设我们想要收回授权给当前网站的账号和密码,又不可能让第三方主动放弃已给
授权,那么只有用户自己修改微信密码,但是有多个第三方网站都被微信服务商授权了登录,修改密码的同时,其它网站的授权也都失效了;
三、很难实现给不同的网站,授予不同的权限;

1.2 oAuth原理和授权流程
为了解决上述传统的账号密码授权方式存在的问题,oAuth项目组制定了oAuth标准,目的在于为API访问授权提供一个开放的标准;oAuth是针对访问授权的一个开放标准,与以往的授权方式不同之处是oAuth的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此oAuth是**的。oAuth是Open Authorization的简写。服务商和第三方*台依据oAuth标准来编码,服务商可以实现一个**的授权机制,第三方应用调用服务商资源也有了统一性,服务商和第三方依据统一的标准来实现自己的功能。
用户向第三方网站发起请求,请求使用其它*台授权登录,这个时候第三网站并不是直接的要求用户提供其它*台的账号和密码,而是引导用户浏览器跳转到服务商的授权登录页面,用户在服务商的网站页面进行登录完成授权。所以解决了刚才的第一个问题,用户不需要给第三方用户透露账号和密码。登录授权之后,服务商就会生成一个一次性的用来访问资源的访问码,我们叫做令牌,这个令牌包含了用户、第三方网站、资源权限的信息。生成这个令牌之后,服务商又引导用户浏览器携带这个令牌跳回第三方网站的页面,网站接收这个令牌后,第三方网站就可以携带令牌作为凭证访问服务商上面有权限访问的资源。在这个过程中,用户没有泄漏账号和密码给第三方,成功授权登录,并且限制了第三方访问的服务资源的权限。

1-1课程介绍
1-2OAuth2.0协议
1-3OAuth工作原理
1-4关于OAuth版本
1-5OAuth应用场景
2-1三个重要步骤解析
2-2步骤一请求OAuth登陆页
2-3步骤二用户使用QQ号登录并授权
2-4步骤三返回登录结果
2-5关于AssessToken
2-6AssessToken和RefreshToken数据传输原理
2-7AccessToken和RefreshToken生命周期
2-8小结
PHP第三方登录设计教程

会员资源

开通赞助会员 · 全站免费下载

  • 版权说明
  • 文章采用: 《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权。
    本站资源来自互联网收集,仅供用于学习和交流,请勿用于商业用途。如有侵权、不妥之处,请联系客服以便删除!
  • 阿影博客网站永久地址为:https://www.aybk.cn/
  • 本站资源大多存储在云盘,如发现链接失效,请留言评论我们会第一时间更新。
  • 关于本站的所有留言评论与转载、引用文纯属文字原作者个人观点,与本站观点及立场无关!
  • 本站为非经营性个人站点,会员功能仅作为用户喜欢本站自愿捐赠、打赏,仅为维持服务器
  • 麦子学院软件测试系统视频课程 11部分完整 软件测试工程师全套培训视频教程
    « 上一篇 05-01
    VUE+HR-saas全栈项目实战课程
    下一篇 » 05-01

    发表评论

    • 泡泡
    • 阿呆
    • 阿鲁
    • 蛆音娘
      没有更多评论了