PHP第三方登录

  [复制链接]

2081

主题

2095

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35774
admin 发表于 2021-5-30 12:29:41
25392 101

& j6 k1 r# y* l5 m+ A课程目录
1 `2 C; q+ B) o$ L$ {3 x
' D6 f* v! v1 n5 T  q3 _7 b" E2 D1 u                      PHP第三方登录* O; @. B/ L; c4 O& ~
1. oAuth2.0原理
$ B7 a' Z9 v3 k1 a# p
! d. G. l2 O* C0 P1 A' s; E
5 \/ k' s; R. E$ j! y网站为了方便用户快速的登录系统,都会提供使用知名的第三方平台账号进行快速登录的功能,第三方登录都是基于oAuth2.0标准来实现的。下面详细分析【基于账号密码授权】和【基于oAuth2.0标准授权】的原理和oAuth2.0授权的优点。. @9 r; \$ a9 ^- Y: M. w

2 j6 j! b+ E) l; a/ ?  f6 U
8 C$ L4 |7 j- p. y6 _# Y7 e1.1 账号密码授权方式
$ Z& H2 w. q' T+ j3 {- u8 M9 u2 [2 m% B9 G$ S# R8 o& I  J

5 E! S2 G- k* A& {0 L- |
+ n7 G" b& D% x! m; E' {; u! v$ `, c
/ H, \+ h6 M' D. t- v* [5 Q
用户到网站发起使用其他平台账号登录的指令,第三方平台网站就向用户索取账号和密码,用户将账号和密码提供第三方网站之后,网站使用用户提供的账号和密码去登录服务商,取回用户的信息。这就是使用账号和密码授权登录的流程。
! A: |) w0 v* @+ r3 j! o' [. F
' t- P7 s3 K  O9 e6 z# G/ J+ V  Z: d6 v5 [, K* C
存在的问题:4 e0 i! D' X; s9 y8 I; _

( Q! e, P+ R5 ~( x
, N- _5 m" L6 D; Y: \- Z2 H6 M& |5 H一、服务商的账号和密码都泄漏给了第三方平台,导致安全忄生问题;
- E; H1 k7 v$ B5 e- P; P6 ]2 L
9 Q/ j% p& E2 y6 v% i/ f. Q
+ S) w9 d0 S$ ~5 w( f分析:假设服务商是微信,没有人会愿意把微信账号和密码告诉当前访问的网站,一旦当前网站发生信息泄漏,微信账号和密码都会丢失;
* m; c! M; J, c- W: J, |
$ m. Q8 o% f, \3 @' Q9 o
; p9 ?* Z' n' o/ M) B6 D! H" P二、用户要收回授权,只能通过修改密码来实现,若是有多个第三方网站都是用
0 N1 t- |7 b  a7 U' z3 m, M0 }$ P# c" _8 N+ z  L6 o; y

( ?& V5 i3 d+ d' K* E1 h% c同一个服务商授权登录,那么所有第三方网站的授权都被收回来了;$ `; J4 Y/ g2 Q1 T

1 R/ N# r6 ^( o5 U* h4 Q* T9 E6 s% e) l
分析:假设我们想要收回授权给当前网站的账号和密码,又不可能让第三方主动放弃已给/ O5 l3 \$ {0 {( @( i: d, G- g
" H) \, u7 x4 E' i; ?
7 [  o. `! v6 j# k
授权,那么只有用户自己修改微信密码,但是有多个第三方网站都被微信服务商授权了登录,修改密码的同时,其它网站的授权也都失效了;2 q( E8 U& W) G2 N
3 I! W' E8 Y- }! e) }) t* V

3 i% G3 k6 h6 w$ M: ]! M% H; X三、很难实现给不同的网站,授予不同的权限;8 k7 P( C" f" H5 s; z
  p* E: a+ w% |6 w# n9 V
/ n" _3 p8 \$ v& R  E8 ~& c1 A
1.2 oAuth原理和授权流程
* H7 s) J2 s$ k1 N* s5 u
1 U! i2 _& t2 d+ l2 J; u8 q* E$ E7 @0 s2 w
为了解决上述传统的账号密码授权方式存在的问题,oAuth项目组制定了oAuth标准,目的在于为API访问授权提供一个开放的标准;oAuth是针对访问授权的一个开放标准,与以往的授权方式不同之处是oAuth的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此oAuth是安全的。oAuth是Open Authorization的简写。服务商和第三方平台依据oAuth标准来编码,服务商可以实现一个安全的授权机制,第三方应用调用服务商资源也有了统一忄生,服务商和第三方依据统一的标准来实现自己的功能。$ V0 D$ m/ Z! S
9 \$ |: d7 q  Q/ r/ Z7 z
. h3 s) I9 D! W4 _$ C4 _, F& @
4 O0 L& C- Z. d: J4 X* ]

7 h* {4 A) h" b; e
- Y$ W! s1 w3 B7 E用户向第三方网站发起请求,请求使用其它平台授权登录,这个时候第三网站并不是直接的要求用户提供其它平台的账号和密码,而是引导用户浏览器跳转到服务商的授权登录页面,用户在服务商的网站页面进行登录完成授权。所以解决了刚才的第一个问题,用户不需要给第三方用户透露账号和密码。登录授权之后,服务商就会生成一个一次忄生的用来访问资源的访问码,我们叫做令牌,这个令牌包含了用户、第三方网站、资源权限的信息。生成这个令牌之后,服务商又引导用户浏览器携带这个令牌跳回第三方网站的页面,网站接收这个令牌后,第三方网站就可以携带令牌作为凭证访问服务商上面有权限访问的资源。在这个过程中,用户没有泄漏账号和密码给第三方,成功授权登录,并且限制了第三方访问的服务资源的权限。8 Q' F# B( l5 j) \* ?* y/ E% G

) }* g+ |* ]4 |
# _. P8 @0 H; t" v6 P& `$ y( @$ S1-1课程介绍( M# S$ |6 y1 y! N- K- p" ?
& C+ k! g, P% n) X. f. @' v
1-2OAuth2.0协议& l0 \* D9 A' q, R7 q
2 O1 X) S8 s. r) E. S2 t
1-3OAuth工作原理  J; L3 R" q5 A9 d

- I# J! D% k2 q1-4关于OAuth版本
! P3 q8 O0 s* r- Z  M' O* r% r# y3 Z6 h; _: S. n: P+ S* j* S7 h
1-5OAuth应用场景
- N0 w9 R; `2 ]' R# L
( z8 b3 d& \: ^) b  x( F2-1三个重要步骤解析: _& R7 X1 b& O) b: q
' a. {3 U- M; I! X$ @: S5 K1 @: P2 N
2-2步骤一请求OAuth登陆页
* y. f& {5 w( d+ E9 j( x9 Y
5 z) Q: b1 [$ F# W- `4 X2-3步骤二用户使用QQ号登录并授权3 R/ j& J$ a7 |- r1 I; v$ z6 V! N2 Q

- n1 M7 k& n$ n( L& ^' B2-4步骤三返回登录结果
4 o; j3 h- u* T+ e* J' V7 s& \4 ~. `% }3 z  O" Q/ V
2-5关于AssessToken
3 D+ p# ^1 ?* t4 T9 G
  z8 k2 I) N& g! ^7 N2-6AssessToken和RefreshToken数据传输原理+ W& W6 i3 {. k4 `! }
2 B8 w$ G, D( ^+ r* w6 U( S2 D
2-7AccessToken和RefreshToken生命周期" W6 @2 @2 A0 s5 G0 n+ K: B
$ c5 A' ~# ?; I1 U1 z% G
2-8小结   7 W- s* n7 b+ T. Z' k+ Q2 N$ J! q2 n4 k! J4 f

( o( V! W+ Q6 L% t5 ~# L* Q资源存放>百度网盘
+ Z9 a- Y. d2 k8 p; d* |
* S/ c4 [5 n( R9 c3 n下载地址# y0 e' ?. Y" Q- C- \
游客,如果您要查看本帖隐藏内容请回复
1 w1 |+ E7 k8 I6 e7 g( [
VIP会员全站免金币% r; R* H: y6 p! g5 v6 V5 V
IT直通车已为全国各地程序员提供上千G课程资源; k/ y% Y1 \/ M* r1 N
如您需要购买本站VIP会员,请点击「开通VIP」享受全站资源免金币无限制下载!) R( n4 K  |3 \+ t! }

$ ~7 V6 A/ O8 P; ~失效反馈
' ~1 `% B, A- ]IT直通车所有资源都存放在自己注册的百度网盘,失效可修复,确保持续可用* n3 r9 ~* y1 L8 h$ p6 x
如您需要的资源链接提示失效,请尽情反馈给我们,将在收到反馈后尽快修复「点击反馈
5 z. ~5 v  [$ I7 \' ~) l2 @% d6 g! u% E2 n! ~" ?7 y; y; K3 z
获得帮助
+ p; k9 M) [7 C9 U' D: H需要帮助吗?点击网站右侧在线客服,7X12小时在线!
7 p- e: e- [( b7 T! F9 N' p  Y, j1 L6 X
回复

使用道具 举报

陆子525630 发表于 2021-5-30 12:31:54
6666666666666
回复

使用道具 举报

街充骨万怎 发表于 2021-5-30 14:42:56 来自手机
回帖看看下载地址
回复

使用道具 举报

123457776 发表于 2021-6-1 18:03:14
感谢~~~~~~~~~~~~
回复

使用道具 举报

earth20011 发表于 2021-6-3 08:56:06
ttttttttttttt
回复

使用道具 举报

雍不言弃 发表于 2021-6-11 22:15:51
感谢~~~~~~~~~~~~
回复

使用道具 举报

pcng417912 发表于 2021-6-12 21:17:27
6666666666666
回复

使用道具 举报

yeungg2017 发表于 2021-6-14 13:36:05
感谢分享66666
回复

使用道具 举报

天上跑鸟跑ac 发表于 2021-6-14 21:27:23
ititititititititititit
回复

使用道具 举报

兔仔妹致 发表于 2021-6-14 22:23:14
收割一波好资源
回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 AD:IT直通车VIP会员全站免金币下载
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

遇到问题联系客服

在线客服QQ 488090338 

如您充值或开通会员后资源无法下载

本站有售后服务,联系客服修复即可

[联系客服]-[会员充值]

更多课程

关于本站

VIP介绍 加入我们

售后服务

QQ客服 Email邮件

网站声明

IT直通车(www.itztc.com)是一个IT视频教程、软件、书籍资源整合分享平台
站内所有资源均来自于互联网,版权归属原资源作者,如无意侵犯您的版权,请联系我们删除处理。

Archiver|手机版|小黑屋|IT学习网 |网站地图

Powered by Discuz! X3.4  © 2001-2013 IT直通车 ICP证:粤ICP备13026616号 增值电信业务经营许可证:粤B2-20140196

返回顶部 返回列表