您當前的位置是:  首頁 > 新聞 > 國際 >
 首頁 > 新聞 > 國際 >

BuzzFeed開源SSO認證代理、為多網(wǎng)站提供單一登入服務

2018-08-27 10:42:18   作者:   來源:CTI論壇   評論:0  點擊:


  多站點的登入服務不只為開發(fā)營運人員,帶來維護登入功能的困擾,應用程式使用者在使用不同服務時,也需要歷經(jīng)重復登入的繁瑣程序,而BuzzFeed自行開發(fā)的單一登入認證代理SSO則能解決這些問題。
  媒體BuzzFeed開源其受Google身份識別代理(Identity Aware Proxy)啟發(fā)所發(fā)展的單一登入認證代理(Single-Sign-On Authentication Proxy,SSO),以支援員工全球化的工作模式,為旗下多應用程式網(wǎng)站提供單一登入服務。
  由於BuzzFeed的軟件生態(tài)系由數(shù)百個互相交互的微服務組成,部分這些應用程式會在網(wǎng)絡上公開,有權限的人才可登入使用。BuzzFeed提到,由於全球員工成長,將工具曝露在網(wǎng)絡上,供內(nèi)部員工使用的需求明顯成長,因此安全方便的身分認證需求也跟著增加。
  為了建立真實單一來源的身分,BuzzFeed過去使用了Bitly的開源Oauth2_proxy服務,這個反向代理使用第三方包括Google或是GitHub等OAuth2供應商服務來認證并授權請求,BuzzFeed以Oauth2_proxy加速應用程式的開發(fā),讓開發(fā)人員不需要每次建置服務,都要重新實作身分驗證功能。過去有一段時間BuzzFeed大量的使用Oauth2_proxy解決方案,但是隨著服務成長,發(fā)現(xiàn)可擴展程度不如預期發(fā)展。
  BuzzFeed提到,對營運商來說,要管理爆炸成長的樣板授權代理服務非常的困難,身分驗證功能的關鍵安全性修復程序,需要進行超過百次的補丁和部署,因為每一個受保護的微服務都有自己認證代理服務,使得控制這些服務存取,成為一項很大的挑戰(zhàn)。而可擴展性也不是只有系統(tǒng)營運和開發(fā)會遇到,對終端用戶也會造成困擾,這些用戶需要單獨登入每個應用程式,讓工作流程過於繁瑣,而且也養(yǎng)成盲目點擊OAuth2登錄流程的壞習慣,員工容易遭受釣魚攻擊。
  BuzzFeed自行開發(fā)了SSO來解決這個問題,現(xiàn)在使用者只要登錄一次,就能夠授權存取所有的應用程式。SSO由sso-auth以及sso-proxy兩個部分組成,分別執(zhí)行巢狀授權流程以及代理請求,sso-auth是一個中央授權服務,可以直接透過第三方服務完成OAuth流程。sso-proxy則能確保所有請求都經(jīng)過授權,才將使用者請求導至上游服務。
  用戶第一次登入受SSO保護的網(wǎng)站時,會被轉址到sso-auth進行認證,當用戶存取另一個受SSO保護的網(wǎng)站時,瀏覽器會先被轉址到sso-auth,由於身分已經(jīng)過驗證,便會進行自動登入,接著被導向sso-proxy。SSO不只讓員工登入應用程式變得更容易,而且現(xiàn)在開發(fā)人員維護身分驗證服務的安全性也更輕松,只需要修復一個地方就可以了。
【免責聲明】本文僅代表作者本人觀點,與CTI論壇無關。CTI論壇對文中陳述、觀點判斷保持中立,不對所包含內(nèi)容的準確性、可靠性或完整性提供任何明示或暗示的保證。請讀者僅作參考,并請自行承擔全部責任。

相關閱讀:

專題