云智慧(北京)科技有限公司鄧超
說起oauth3.0,我相信很多人對其已經非常熟悉,并且已經應用在很多開放平臺上,如新浪微博開放平臺,騰訊微博開放平臺等;下面我將我個人對于Oauth3的理解以及Oauth3在監(jiān)控寶開放平臺上的是如何運用的做一下簡單的闡述,有說的不到位的地方還望指點。
官方定義:
OAuth(開放授權)是一個開放標準,允許用戶讓第三方應用訪問該用戶在某一網站上存儲的私密的資源,而無需將用戶名和密碼提供給第三方應用。
OAuth允許用戶提供一個令牌,而不是用戶名和密碼來訪問他們存放在特定服務提供者的數據。每一個令牌授權一個特定的網站在特定的時段內訪問特定的資源。這樣,OAuth讓用戶可以授權第三方網站訪問他們存儲在另外服務提供者的某些特定信息,而非所有內容。
OAuth 2.0是OAuth協(xié)議的下一版本,但不向下兼容OAuth 1.0。OAuth 2.0關注客戶端開發(fā)者的簡易性,同時為Web應用,桌面應用和手機,和起居室設備提供專門的認證流程。
個人理解:
Oauth3.0就是一個互聯(lián)網標準協(xié)議(基于https) ,可以讓用戶來實現(xiàn)跨平臺數據共享。
比如有2個平臺A和B,在A平臺上有一些數據資源,現(xiàn)在B平臺想拿到A平臺上的某些數據資源,如果此時A平臺支持Oauth3協(xié)議,那么B平臺就可以通過協(xié)議向A平臺請求相應的數據資源應用的B平臺上。
OAuth在"客戶端"與"資源服務端"之間,設置了一個授權層(authorization layer)。其過程如圖(來自RFC 6749 ):
(A)“客戶端”向“資源所屬者”發(fā)出授權請求
(B)“資源所屬者”同意給“客戶端”授權
(C)“客戶端”獲得授權后向“認證服務端”請求令牌
(D)“認證服務端”向“客戶端”發(fā)放令牌(Access Token)
(E)“客戶端”通過令牌向“資源服務端”請求資源
(F)“資源服務端”確認令牌無誤,向“客戶端”發(fā)放資源
從以上步驟可以看出,“客戶端”想拿到資源,關鍵點在于“資源所屬者”的授權,只有拿到了授權,才可以進行接下來的步驟。
OAuth 2.0定義了四種授權方式:
§ A、授權碼模式(authorization code)
授權碼模式(authorization code)的特點就是通過客戶端的后臺服務器,與"服務提供商"的認證服務器進行互動。
§ B、簡化模式(implicit)
簡化模式(implicit grant type)不通過第三方應用程序的服務器,直接在 瀏覽器中向認證服務器申請令牌,跳過了"授權碼"這個步驟。所有步驟在瀏覽器中 完成,令牌對訪問者是可見的,且客戶端不需要認證。
§ C、密碼模式(resource owner passwordcredentials)
密碼模式(Resource Owner Password Credentials Grant)中,用戶向 客戶端提供自己的用戶名和密碼??蛻舳耸褂眠@些信息,向"服務商提供商"索要授 權。
§ D、客戶端模式(client credentials
客戶端模式(Client Credentials Grant)指客戶端以自己的名義,而不是 以用戶的名義,向"服務提供商"進行認證。
§ 目前監(jiān)控寶的API平臺只對監(jiān)控寶企業(yè)用戶開發(fā),而不對所有監(jiān)控寶用戶開發(fā)。基于這種情況,Oauth的密碼授權模式比較適合(注:通過賬號和密碼,平臺就可以認證是否為監(jiān)控寶企業(yè)用戶,從而來判斷是否給予授權),所以我們果斷采用了這種授權方式。
監(jiān)控寶API平臺簡化了授權過程,平臺將每一個企業(yè)賬號當做一個客戶端,并自動為其生成一個唯一的授權標識,所以每一個客戶端可以直接向平臺認證服務端請求令牌,然后通過令牌向平臺資源服務端請求資源。如圖(監(jiān)控寶API平臺認證過程):
關于監(jiān)控寶API平臺請具體參考:
http://www.jiankongbao.com/common/api_interface
關于作者:
鄧超,云智慧軟件開發(fā)工程師,2010年畢業(yè)于秦皇島燕山大學,2012年初加入云智慧(北京)科技有限公司。目前主要負責監(jiān)控寶產品架構的優(yōu)化與研發(fā)。
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
分享文章:oauth2.0在監(jiān)控寶項目中的應用一例-創(chuàng)新互聯(lián)
鏈接分享:http://www.ekvhdxd.cn/article28/dhoscp.html
成都網站建設公司_創(chuàng)新互聯(lián),為您提供移動網站建設、搜索引擎優(yōu)化、全網營銷推廣、App開發(fā)、網站收錄、企業(yè)網站制作
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內容