Ⅰ OAuth2.0實現原理
OAuth2.0是一個授權框架,他信盯規定了客戶從授權伺服器獲取令牌Token的規則。
要理解OAuth2.0,先要知道為什麼會有這個東西產生,或者說他能幫我們解決什麼問題,其實簡單說他就是幫我們解決了訪問安全問題。先看如下的一張圖:
圖片顯示了我們沒有引入任何安全機制情況下的資源訪問過程,可以看到正常的用戶和惡意的用戶都可以通過向資源伺服器的介面發送請求獲得用戶數據。顯然惡意用戶不該獲取數據,他是非法獲得,這個情況不應該被允許,需要一種機制保護用戶數據。
OAuth2.0包含了資源擁有者,授權伺服器,客戶應用,授權伺服器,資源伺服器。
客戶應用: 通常是一個 WebWeb 或者無線應用,它需要訪問用戶的。
資源伺服器: 是一個 webweb 站點 或者 web service web service web service web service API ,用戶的受保護。
授權伺服器: 在客戶應用成功認證並獲得授權之後,向客戶應用頒發訪問令牌Access Token。
資源擁有者: 資源的擁有人,想要分享某些資源給第三方應用。
1)授權碼(Authorization Code Token),僅用於授權碼授權類型,用於交換獲取訪問令牌和刷新令牌
2)刷新令牌(Refresh Token),用於去授權伺服器獲取一個新的訪問令牌
3)訪問令牌(Access Token),這是OAuth令牌類型中最核心的一個,用於代表一個用戶或服務直接去訪問受保護的資源
4)Bearer Token,不管誰拿到Token都可以訪岩坦運問資源,像現鈔
5)Proof of Possession(PoP) Token,可以校驗client是否對Token有明確的擁有權
上面提到了需要提供一種機制來保護數據,OAuth2.0提粗梁供的就是一種授權機制,就是說用戶要訪問資源必須先通過授權伺服器授權拿到Access Token(訪問授權),他拿著這個Access Token才能去資源伺服器去要他想要的數據,示意圖如下:
這里看到我們引入了一個授權伺服器,這個授權伺服器就是專門負責頒發Access Token的,客戶應用需要從授權伺服器中獲得Access Token,獲得後再向資源伺服器去獲取數據,請求中包含了Token一起發到資源伺服器,資源伺服器首先要驗證這個Token是否合法,如果合法再返回數據給客戶應用。
上圖中紅色圈圈圈起來的就是OAuth2.0框架協議工作的地方,他規定了客戶應用如何獲取Access Token,以及如何使用Token的整個過程。
其中核心的授權伺服器包括了授權端點,令牌端點,校驗端點,注銷端點,如下圖所示:
OAuth2.0中規定了多種授權模式,各種模式實現的復雜程度和安全系數不一樣,我們先分別看一下四種授權模式:
1)授權碼(Authrization Code)模式:
基本流程是先通過前端渠道客戶獲取授權碼,然後通過後端渠道,客戶使用Authrization Code去交換Access Token和可選的Refresh Token,這種模式是最安全的模式,因為令牌不會通過user-agent去傳遞,完整的過程如下圖:
授權碼模式的優點是比較安全,他可以有token過期時間,而且上面的第四和第五步都是在伺服器之間的訪問,很難被截獲,用戶信息也存在服務端,這樣就保證了他的安全性。他的缺點是需要進行多次請求才能訪問到資源。
授權碼模式假定資源擁有者和客戶不在一台設備上,他擁有高安全性的保障,目前市面上主流的第三方認證都是採用這種模式。
2)隱式/簡化(Implicit)模式
基本流程是Access Token直接通過前端渠道從授權伺服器返回,完整的過程如下圖:
3)密碼(Resource Owner Password)模式
基本流程是使用用戶名/密碼作為授權方式從授權伺服器上獲取Access Token,而且一般不支持refresh token,完整的過程如下圖:
4)客戶端(Client)模式
基本流程是通過後端渠道去獲取一個Access Token,因為客戶憑證可以使用對稱或者非對稱加密,該方式支持共享密碼和證書,完整的過程如下圖:
客戶端模式適合用作伺服器間通信場景。
授權碼模式有一個基本的選擇流程,如下圖:
Ⅱ 什麼是OA伺服器
OA是Office Automation的縮寫,為辦公自動化。是將計算機、通信等現代化技術運用到傳統辦公方式,進而形成的一種新型辦公方式。
辦公自動化利用現代化設備和信息化技術,代替辦公人員傳統的部分手動或重復性業務活動,優質而高效地處理辦公事務和業務信息,實現對信息資源的高效利用,進而達到提高生產率、輔助決策的目的,最大限度地提高工作效率和質量、改善工作環境。
辦公自動化(OA)是一個企業除了生產控制之外的一切信息處理與管理的集合。
不同的使用對象具有不同的功能:對企業高層領導來說,辦公自動化(OA)是決策支持系統(DSS);對於企業中層管理者來說,辦公自動化(OA)是信息管理系統(IMS);對於企業普通員工來說,辦公自動化(OA)是事務/業務處理系統。
(2)Auth伺服器是什麼擴展閱讀:
OA系統的優點
1、節省工作成本,利於文件傳閱管理
與過去對紙質文件的審閱方式相比,通過OA系統處理收發文件及共享信息資源可以節省大量紙張,降低辦公成本。領導可直接在OA系統上閱讀、審批和修訂電子文件,並保留閱讀和修改的痕跡,解決了過去因反復修改文件草稿而浪費大量紙張的問題,而且,電子文件在OA系統上可同時向多人傳閱,縮短了文件傳閱的周期,杜絕了紙質文件丟失的可能性/
2、方便檢索查閱,促進信息共享
OA系統中的公用文檔、公共信息和通知公告等功能模塊是各部門共享信息資源的平台,員工可通過OA系統及時了解全院的最新信息,有利於部門之間的溝通與合作。OA系統上強大的條件檢索功能為員工快速查找文件資料提供了極大的便利,解決了過去花費大量時間翻查紙質文件的問題,從而提高搜集文件資料的效率。
3、增強監控能力,提高行政管理水平
OA系統能及時有效地監控各個部門、各位員工的日程安排、辦文情況以及會議室、車輛和辦公用品的使用情況,並具有催辦督辦和自動提醒的功能,一方面防止了延誤業務辦理時間的情況,另一方面有利於管理員的全局監控,及時發現問題並及時協調解決。此外,在OA系統上處理的流程步驟都留有審批痕跡,具有可追溯性,方便日後的查閱和管理。
4、提高工作效率,打造優秀團隊意識
OA系統的信息傳遞、日程安排等功能模塊,極大地提高了員工之間的協作效率與溝通能力,打造了凝聚力較強、工作效率較高,並且具有快速反應能力的優秀團隊。通過設立工作論壇等模塊,更及時有效地加強了領導與員工之間、員工與員工之間的交流和互動,員工之間互相取長補短,共同學習,共同進步,促進了業務水平的提高增強了團隊合作精神。
5、實現自動辦公,構建科學管理模式
OA系統的使用,全面推進了辦公自動化,藉助先進計算機和網路信息技術,實現了高效、安全、規范地處理辦公室內的事業性業務,大幅度提高工作效率和服務質量。同時,為各級領導進行宏觀管理提供了高效、便利的服務,為科學決策提供了參考依據,從而構建一套科學的管理模式。
Ⅲ 什麼是OA系統伺服器
伺服器也是一台電腦,就是專門給OA系統使用的電腦 ,而且比普通的電腦配置高很多,操作系統不同,許可權也不同,一般IT機房就可以看到。