oAuth 認證和受權原理

什麼是OAuth受權?

 
1、什麼是OAuth協議
OAuth(開放受權)是一個開放標準。
容許第三方網站在用戶受權的前提下訪問在用戶在服務商那裏存儲的各類信息。
而這種受權無需將用戶提供用戶名和密碼提供給該第三方網站。
OAuth容許用戶提供一個令牌給第三方網站,一個令牌對應一個特定的第三方網站,同時該令牌只能在特定的時間內訪問特定的資源。
 
2、OAuth的原理和受權流程
OAuth的認證和受權的過程當中涉及的三方包括:
服務商:用戶使用服務的提供方,通常用來存消息、儲照片、視頻、聯繫人、文件等(好比Twitter、Sina微波等)。
用  戶:服務商的用戶
第三方:一般是網站,該網站想要訪問用戶存儲在服務商那裏的信息。
好比某個提供照片打印服務的網站,用戶想在那裏打印本身存在服務商那裏的網絡相冊。
在認證過程以前,第三方須要先向服務商申請第三方服務的惟一標識。
OAuth認證和受權的過程以下:
一、用戶訪問第三方網站網站,想對用戶存放在服務商的某些資源進行操做。
二、第三方網站向服務商請求一個臨時令牌。
三、服務商驗證第三方網站的身份後,授予一個臨時令牌。
四、第三方網站得到臨時令牌後,將用戶導向至服務商的受權頁面請求用戶受權,而後這個過程當中將臨時令牌和第三方網站的返回地址發送給服務商。
五、用戶在服務商的受權頁面上輸入本身的用戶名和密碼,受權第三方網站訪問所相應的資源。
六、受權成功後,服務商將用戶導向第三方網站的返回地址。
七、第三方網站根據臨時令牌從服務商那裏獲取訪問令牌。
八、服務商根據令牌和用戶的受權狀況授予第三方網站訪問令牌。
九、第三方網站使用獲取到的訪問令牌訪問存放在服務商的對應的用戶資源。
 
3、目前支持OAuth的網站有哪些?
t.sina.com.cn
t.qq.com
t.sohu.com
t.163.com
www.douban.com
www.twitter.com
www.facebook.com
Google Buzz
 

文件來源於:http://www.6zou.net/tech/what_is_oauth.html html

 

 

 

所謂OAuth(即Open Authorization,開放受權),它是爲用戶資源受權提供了一種安全簡單的標準,也就是說用戶在訪問第三方web或應用的時候,第三方不會知道用戶的信息(登陸密碼等),如今基本都支持OAuth2.0版本了。web

首先來看看咱們在第三方使用oauth流程以下:安全

第一步:用戶登陸第三方網站,使用qq登陸。網絡

第二步:點擊登陸後,會跳到qq平臺提示輸入用戶名和密碼。post

第三步:若是用戶名和密碼正確,會提示是否接受受權,若是受權成功,第三方網站就能訪問你的資源了,qq頭像、用戶名等網站

 

認證和受權過程(包括三方)

 

  一、服務提供方,用戶使用服務提供方來存儲受保護的資源,如照片,視頻,聯繫人列表。.net

  二、用戶,存放在服務提供方的受保護的資源的擁有者。視頻

  三、客戶端,要訪問服務提供方資源的第三方應用,一般是網站。在認證過程以前,客戶端要向服務提供者申請客戶端標識。htm

 

 

       用戶訪問客戶端的網站,想操做用戶存放在服務提供方的資源。資源

  客戶端向服務提供方請求一個臨時令牌。

  服務提供方驗證客戶端的身份後,授予一個臨時令牌。

  客戶端得到臨時令牌後,將用戶引導至服務提供方的受權頁面請求用戶受權。在這個過程當中將臨時令牌和客戶端的回調鏈接發送給服務提供方。

  用戶在服務提供方的網頁上輸入用戶名和密碼,而後受權該客戶端訪問所請求的資源。

  受權成功後,服務提供方引導用戶返回客戶端的網頁,並返回已受權的臨時憑證。

  客戶端根據已受權的臨時令牌從服務提供方那裏獲取訪問令牌。

  服務提供方根據臨時令牌和用戶的受權狀況授予客戶端訪問令牌。

  客戶端使用獲取的訪問令牌訪問該用戶存放在服務提供方上的受保護的資源。(客戶端只能訪問給予它受權的用戶的資源信息)

相關文章
相關標籤/搜索