理解OpenID和OAuth的區別

      在項目開發中,我們經常說授權認證,經常把他們放到一起去描述,那兩者在本質上是有區別的,OpenID和OAuth就是我們說的認證和授權。

OpenID:Authentication 認證

OAuth :Authorization   授權

       如今越來越多的網站,以及一些應用程序都開始使用第三方社交平臺賬戶登錄,那這裏就會涉及到安全性的問題,隱私的問題,你不能隨意來獲取我的資料,當然你來使用我的資料,你要經過用戶的同意,那這個用戶是不是我平臺上,還是要來向我求證,那在這個過程中,實際上就出現了兩個過程,我們還是直接使用上次的例子來說明,比較直觀,CSDN使用QQ登錄,進入csdn的登錄頁,點擊使用QQ登錄:

   

       在進入到QQ登錄界面後,最開始是要請求認證,用戶輸入QQ號和密碼,點擊登錄,騰訊互聯會先進行驗證該用戶是否爲我的用戶,如果是我的用戶,那麼我會通知你(CSDN),他是我的用戶,你可以使用該賬戶登錄你的系統,這個過程就是認證(Authentication),認證就是證明你是誰,你是否是真實存在的,就好像,快遞員來給你送快遞,讓你出示你的身份證,他確定你是本人後,把快遞給你,這就是OpenID。

      而在QQ授權登錄下方,有兩給CheckBox複選框,可以允許CSDN獲得您的暱稱、頭像、性別,這是在認證之後的事了,在騰訊互聯你是我平臺的用戶後,你可以自己選擇CSDN是否有權去獲取你的相關信息,當你勾選後,騰訊互聯就把你的這些基本信息給了CSDN,這個過程就是授權(Authorization),授權就是確定了你是誰後,又把屬於你的東西給了別人,猶如你向快遞員出示了身份證,然後你又把你房門的密碼給了他,並告訴他說,我把房門密碼給你,你幫我放到我客廳裏吧。

        不管是認證(Authentication)還是授權(Authorization),都是很重要的,他涉及到兩個平臺之間的信息共享問題,還有用戶的隱私,現在大多數第三方平臺,特別是社交平臺,都有自己的開放平臺,也允許其他的平臺去使用我的信息,特別是對我們初次登錄的購物網站、論壇等等,這種方式也爲我們省去了重新註冊的麻煩,反正對於我來說,如果一個網站沒有第三方登錄,我都不樂意去他的平臺上註冊,太麻煩。但是也有的平臺讓你使用第三方登錄後,還要你再填寫一些郵箱、手機號等信息,因爲畢竟第三方開放平臺能給這些平臺授權的信息是有限的,而這些平臺還要想你更多的信息,也實屬無奈,雖然這樣做,也讓我們心生厭惡。

       關於OpenID和OAuth的區別,就寫這麼多吧,僅代表個人觀點,有什麼不對的地方請大神們多指正。後面的文章我會繼續寫關於認證和授權的示例。


掃描二維碼關注我的公衆號,共同學習,共同進步!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章