由於工作上的需要,公司要評估行動裝置上,怎麼結合SSO,故開始了我的OAuth評估的學習。
我想OAuth2中文的相關文件真的不少,我列出我近期看了,覺得不錯的連結給大家
Yu-Cheng Chuang’s Blog OAuth 2.0 系列文目錄
我在吸收完之後,列成條列式的,方便大家閱讀。
OAuth主要的意思是 Authorization(授權),不是認證(Authentication)!!主要的是一個在身分認證過後,進行【授權】的流程,那授權是授哪些權呢?怎麼授呢?
以上面這張圖來說,有一個程式,名子叫做【XXX App】想要取得你在Google的個人資料,你願意嗎?
通常你看到這個畫面的時候,是你已經登入Google帳號,並要去加入某個服務(遊戲或應用程式),或要安裝啥應用程式才會這樣問你。
表示你要執行的這個【XXX App】要去Google取得你的個人資料,進而問你,你同意嗎?
看到這張Pokemon帳號登入,就是一個例子。
在這情境之下,有Fu了嗎?
|
用途 |
Facebook 模式 |
一般公司 |
Resource Owner |
可以授權別人去存取 Protected Resource 。如果這個角色是人類的話,則就是指使用者 |
一般的使用者 |
公司的員工 |
Resource Server |
存放 Protected Resource 的伺服器,可以根據 Access Token 來接受 Protected Resource 的請求。 |
握有USER資料的Facebook |
人資部的資料中心主機 |
Client |
代表 Resource Owner 去存取 Protected Resource 的應用程式。 |
需要存取受保護資源的程式 |
人事請假系統 |
Authorization Server |
在認證過 Resource Owner 並且 Resource Owner 許可之後,核發 Access Token 的伺服器。 |
Facebook的獨立授權伺服器 |
驗正身分作業的主機 |
在2012年發佈了2.0的版本。
由於OAuth的協定很受到各大機構推崇,故實際使用的按費非常之多,Google、Facebook、Plurk、Twitter 等等的服務都有提供。
參考網站:
OpenAM Chapter 13. Managing OAuth 2.0 Authorization
以上文章由Ryan整理,若有侵犯版權、勘誤,請來信告知。