李小萌资源网 PHP PHP第三方登录


PHP第三方登录

2019-08-22 1065
木瓜牛奶
资源介绍

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小结





百度网盘可以用手机平板电脑在线播放,也可以下载之后播放

本帖资源评论
[架构] 2018优才Web PHP全栈工程师高级教程 调优/高性能/亿级架构视频教程 共34课
PHPExcel探索之旅
[项目实战] php 框架系统、文章系统、留言板、商城系统 项目实战开发教程
2016北京传智播客PHP培训42期 基础+就业
【ThinkPHP】轻量级PHP实用编程学习视频教程 实战学习视频下载 大型商城项目视
[Web开发合集] 从PHP基础到实战高手 高性能Linux服务器构建实战 千峰教育PHP全新版高级视频教程
尚观 网站PHP商业网站开发企业案例初级
布尔教育 燕十八-PHP基础巩固 60讲带你学透PHP PHP视频教程
近距离探索memcache缓存
thinkphp汽车租赁项目开发实战教程
ThinkPHP 5.0开发个人博客实战教程
[网站优化] 兄弟连NoSQL数据库之 Redis数据库管理与基础课程 Redis数据库零基础入门学习课程
[php框架] Mz学院Thinkphp5在线商城项目实战视频教程 Thinkphp5实战教程 共18课
ThinkPHP基础到项目教程全套
ThinkPHP5 经典实录开发个人博客系统实战
燕十八已上岸留下传世PHP教程
后盾网PHP开发QQ第三方登录功能视频教程
PHP经典实例 - 张涛
从PHP基础到实战高手 高性能Linux服务器构建实战 千峰教育PHP全新版高级视频教程
PHP培训课程
没有账号? 注册