91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

淺談OAuth 2.0

發布時間:2020-10-28 15:31:45 來源:億速云 閱讀:112 作者:Leah 欄目:開發技術

淺談OAuth 2.0 ?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

一、快遞員問題

我住在一個大型的居民小區。

淺談OAuth 2.0

小區有門禁系統。

淺談OAuth 2.0

進入的時候需要輸入密碼。

淺談OAuth 2.0

我經常網購和外賣,每天都有快遞員來送貨。我必須找到一個辦法,讓快遞員通過門禁系統,進入小區。

淺談OAuth 2.0

如果我把自己的密碼,告訴快遞員,他就擁有了與我同樣的權限,這樣好像不太合適。萬一我想取消他進入小區的權力,也很麻煩,我自己的密碼也得跟著改了,還得通知其他的快遞員。

有沒有一種辦法,讓快遞員能夠自由進入小區,又不必知道小區居民的密碼,而且他的唯一權限就是送貨,其他需要密碼的場合,他都沒有權限?

二、授權機制的設計

于是,我設計了一套授權機制。

第一步,門禁系統的密碼輸入器下面,增加一個按鈕,叫做"獲取授權"。快遞員需要首先按這個按鈕,去申請授權。

第二步,他按下按鈕以后,屋主(也就是我)的手機就會跳出對話框:有人正在要求授權。系統還會顯示該快遞員的姓名、工號和所屬的快遞公司。

我確認請求屬實,就點擊按鈕,告訴門禁系統,我同意給予他進入小區的授權。

第三步,門禁系統得到我的確認以后,向快遞員顯示一個進入小區的令牌(access token)。令牌就是類似密碼的一串數字,只在短期內(比如七天)有效。

第四步,快遞員向門禁系統輸入令牌,進入小區。

有人可能會問,為什么不是遠程為快遞員開門,而要為他單獨生成一個令牌?這是因為快遞員可能每天都會來送貨,第二天他還可以復用這個令牌。另外,有的小區有多重門禁,快遞員可以使用同一個令牌通過它們。

三、互聯網場景

我們把上面的例子搬到互聯網,就是 OAuth 的設計了。

首先,居民小區就是儲存用戶數據的網絡服務。比如,微信儲存了我的好友信息,獲取這些信息,就必須經過微信的"門禁系統"。

其次,快遞員(或者說快遞公司)就是第三方應用,想要穿過門禁系統,進入小區。

最后,我就是用戶本人,同意授權第三方應用進入小區,獲取我的數據。

簡單說,OAuth 就是一種授權機制。數據的所有者告訴系統,同意授權第三方應用進入系統,獲取這些數據。系統從而產生一個短期的進入令牌(token),用來代替密碼,供第三方應用使用。

四、令牌與密碼

令牌(token)與密碼(password)的作用是一樣的,都可以進入系統,但是有三點差異。

(1)令牌是短期的,到期會自動失效,用戶自己無法修改。密碼一般長期有效,用戶不修改,就不會發生變化。

(2)令牌可以被數據所有者撤銷,會立即失效。以上例而言,屋主可以隨時取消快遞員的令牌。密碼一般不允許被他人撤銷。

(3)令牌有權限范圍(scope),比如只能進小區的二號門。對于網絡服務來說,只讀令牌就比讀寫令牌更安全。密碼一般是完整權限。

上面這些設計,保證了令牌既可以讓第三方應用獲得權限,同時又隨時可控,不會危及系統安全。這就是 OAuth 2.0 的優點。

注意,只要知道了令牌,就能進入系統。系統一般不會再次確認身份,所以令牌必須保密,泄漏令牌與泄漏密碼的后果是一樣的。 這也是為什么令牌的有效期,一般都設置得很短的原因。

OAuth 2.0 對于如何頒發令牌的細節,規定得非常詳細。具體來說,一共分成四種授權類型(authorization grant),即四種頒發令牌的方式,適用于不同的互聯網場景。下一篇文章,我就來介紹這四種類型,并給出代碼實例。

看完上述內容,你們掌握淺談OAuth 2.0 的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節
推薦閱讀:
  1. 理解Oauth2.0
  2. oauth2.0理解

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

邵武市| 方山县| 玉田县| 弥勒县| 丘北县| 郓城县| 方正县| 年辖:市辖区| 普格县| 新田县| 晋中市| 新蔡县| 务川| 扶余县| 犍为县| 兴海县| 邢台市| 元江| 航空| 曲阳县| 皋兰县| 峨山| 兰西县| 凤凰县| 乳山市| 康保县| 牙克石市| 富锦市| 鱼台县| 新郑市| 通化县| 镇雄县| 防城港市| 兴城市| 米脂县| 碌曲县| 五台县| 额尔古纳市| 衡阳县| 苏尼特左旗| 岚皋县|