隨筆 - 35  文章 - 21  trackbacks - 0
          <2011年10月>
          2526272829301
          2345678
          9101112131415
          16171819202122
          23242526272829
          303112345

          常用鏈接

          留言簿

          隨筆分類

          隨筆檔案

          文章分類

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜


          定義

          OAuth(開放授權)是一個開放標準,允許用戶讓第三方應用訪問該用戶在某一網(wǎng)站上存儲的私密的資源(如照片,視頻,聯(lián)系人列表),而無需將用戶名和密碼提供給第三方應用。

          OAuth允許用戶提供一個令牌,而不是用戶名和密碼來訪問他們存放在特定服務提供者的數(shù)據(jù)。每一個令牌授權一個特定的網(wǎng)站(例如,視頻編輯網(wǎng)站)在特定的時段(例如,接下來的2小時內(nèi))內(nèi)訪問特定的資源(例如僅僅是某一相冊中的視頻)。這樣,OAuth允許用戶授權第三方網(wǎng)站訪問他們存儲在另外的服務提供者上的信息,而不需要分享他們的訪問許可或他們數(shù)據(jù)的所有內(nèi)容。



          認證和授權過程


          在認證和授權的過程中涉及的三方包括:
          • 服務提供方,用戶使用服務提供方來存儲受保護的資源,如照片,視頻,聯(lián)系人列表。
          • 用戶,存放在服務提供方的受保護的資源的擁有者。
          • 客戶端,要訪問服務提供方資源的第三方應用,通常是網(wǎng)站,如提供照片打印服務的網(wǎng)站。在認證過程之前,客戶端要向服務提供者申請客戶端標識。

          使用OAuth進行認證和授權的過程如下所示:

          1. 用戶訪問客戶端的網(wǎng)站,想操作用戶存放在服務提供方的資源。
          2. 客戶端服務提供方請求一個臨時令牌。
          3. 服務提供方驗證客戶端的身份后,授予一個臨時令牌。
          4. 客戶端獲得臨時令牌后,將用戶引導至服務提供方的授權頁面請求用戶授權。在這個過程中將臨時令牌和客戶端的回調(diào)連接發(fā)送給服務提供方
          5. 用戶服務提供方的網(wǎng)頁上輸入用戶名和密碼,然后授權該客戶端訪問所請求的資源。
          6. 授權成功后,服務提供方引導用戶返回客戶端的網(wǎng)頁。
          7. 客戶端根據(jù)臨時令牌從服務提供方那里獲取訪問令牌。
          8. 服務提供方根據(jù)臨時令牌和用戶的授權情況授予客戶端訪問令牌。
          9. 客戶端使用獲取的訪問令牌訪問存放在服務提供方上的受保護的資源。


          OAuth 2.0

          OAuth 2.0是OAuth協(xié)議的下一版本,但不向后兼容OAuth 1.0。 OAuth 2.0關注客戶端開發(fā)者的簡易性,同時為Web應用,桌面應用和手機,和起居室設備提供專門的認證流程。規(guī)范還在IETF OAuth工作組的開發(fā)中 ,按照Eran Hammer-Lahav的說法,OAuth將于2010年末完成。

          Facebook的新的Graph API只支持OAuth 2.0,Google在2011年3月亦宣佈Google API對OAuth 2.0的支援。

          posted on 2011-10-27 18:15 lincode 閱讀(325) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           
          主站蜘蛛池模板: 金沙县| 宁远县| 香港| 兴安盟| 高邮市| 清丰县| 贵阳市| 通渭县| 塔城市| 墨竹工卡县| 黑河市| 九江市| 上虞市| 诸城市| 泗阳县| 桦甸市| 错那县| 兴宁市| 句容市| 措勤县| 岳池县| 宁津县| 轮台县| 德昌县| 万荣县| 安化县| 凤翔县| 正宁县| 包头市| 仙居县| 江川县| 和田市| 武安市| 太仆寺旗| 昌乐县| 兴国县| 桃源县| 沾化县| 苏尼特左旗| 三门峡市| 扬州市|