OAuth(開放受權)是一個開放標準,容許用戶讓第三方應用訪問該用戶在某一網站上存儲的私密的資源(如照片,視頻,聯繫人列表),而無需將用戶名和密碼提供給第三方應用。網站
如今百度開放平臺,騰訊開放平臺等大部分的開放平臺都是使用的OAuth 2.0協議做爲支撐。視頻
認證受權過程
在認證和受權的過程當中涉及的三方包括:
一、服務提供方,用戶使用服務提供方來存儲受保護的資源,如照片,視頻,聯繫人列表。
二、用戶,存放在服務提供方的受保護的資源的擁有者。
三、客戶端,要訪問服務提供方資源的
第三方應用,一般是網站,如提供照片打印服務的網站。在認證過程以前,客戶端要向服務提供者申請客戶端標識。
使用OAuth進行認證和受權的過程以下所示:
用戶想操做存放在服務提供方的資源。
用戶登陸客戶端向服務提供方請求一個臨時令牌。
服務提供方驗證客戶端的身份後,授予一個臨時令牌。
客戶端得到臨時令牌後,將用戶引導至服務提供方的受權頁面請求用戶受權。在這個過程當中將臨時令牌和客戶端的回調鏈接發送給服務提供方。
用戶在服務提供方的網頁上輸入用戶名和密碼,而後受權該客戶端訪問所請求的資源。
受權成功後,服務提供方引導用戶返回客戶端的網頁。
客戶端根據臨時令牌從服務提供方那裏獲取訪問令牌。
服務提供方根據臨時令牌和用戶的受權狀況授予客戶端訪問令牌。
客戶端使用獲取的訪問令牌訪問存放在服務提供方上的受保護的資源。