今天實(shí)現(xiàn)了一個(gè)簡(jiǎn)單的第三方授權(quán)登陸,在這里總結(jié)一下OAuth認(rèn)證。
請(qǐng)忽略羞恥的圖片和名字。

首先第三方要去GitHub獲取用戶信息,最簡(jiǎn)單的想法就是開發(fā)一個(gè)API。但如果有而已的應(yīng)用訪問api,很輕易的就能拿到用戶數(shù)據(jù)。這時(shí)候第一個(gè)驗(yàn)證方式出現(xiàn)了,我們記住第三方的ip地址,收到請(qǐng)求后和庫里的ip相比對(duì),匹配的上,才會(huì)返回所請(qǐng)求的信息。
這時(shí)又出現(xiàn)了很多問題,如果客戶的應(yīng)用時(shí)分布式部署的,如果經(jīng)常遷移,ip很多,經(jīng)常變更,拿維護(hù)這個(gè)所謂的ip地址庫,就變的很困難,所以有了OAuth。
還有一種淺顯易懂的說法,外賣員要來送外賣,他有進(jìn)小區(qū)的需求,但是我不能吧密碼給他他,所以出現(xiàn)了一種暫時(shí)的通行證:access_token.他到了小區(qū)門口,和我通信,我確認(rèn)身份之后給他一個(gè)臨時(shí)的通行證,這個(gè)證權(quán)限只限于這一次操作的途徑區(qū)域,而且很快會(huì)刷新,這樣就不可能出現(xiàn)復(fù)用的問題。

第三方登陸流程圖
這是我看的教程里的流程圖,畫的很詳細(xì),我就不重新畫了,有興趣的朋友可以去B站:av65117012