這將使用谷歌加登錄流程,我相信是唯一一個允許交叉認證,因此範圍是谷歌加登錄。
「萬維網[點] googleapis [點] com/auth /中plus.login」
那麼,什麼是這裏發生的事情是,你會從中你會被髮送使用請求火力延伸拿到的access_token authwihtoauthtoken指定google作爲提供者以及從chrome.identity.getAuthToken()獲取的access_token!
https://www.firebase.com/docs/web/api/firebase/authwithoauthtoken.html
現在的事實是,這個訪問令牌可以由任何其他應用程序發行的,所以我們需要確保它是有效的,並已發佈了我們的應用程序,基本上我們需要知道有ISN中間的人試圖訪問我們的數據庫。
此驗證由Firebase進行。
他們將檢查此令牌是否屬於與令牌已頒發給同一應用程序。
因此,您需要在Google開發者控制檯的相同應用程序下爲您的擴展程序創建另一組憑據。我們將基本上做同樣的事情,就好像我們要在我們的網頁上那樣做,但我們將在其安全部分中將這組新的憑據插入到Firebase的Google oAuth中。
他們會爲我們做檢查。他們將驗證與谷歌,如果令牌發佈到同一個應用程序。
就是這樣。
背景信息。
https://developers.google.com/identity/protocols/OAuth2UserAgent#validatetoken
使用情況
發送ID令牌與需要進行身份驗證請求。例如,如果您需要將數據傳遞到服務器,並且希望確保特定數據來自特定用戶。
當驗證訪問 所有令牌需要,除非你知道它們直接來自谷歌將在服務器上進行驗證。您從客戶端應用程序收到的任何令牌都必須經過驗證。
谷歌有一個教程如何爲蟒蛇做在發現:
「的github [點] com/GOOGLEPLUS/gplus-verifytoken-蟒蛇」
所以基本上這裏發生了什麼是;相反,您需要在服務器上進行驗證,但是當您將FireClient_ID和APP_SECRET輸入Firebase並啓用Google身份驗證時,Firebase會爲您進行驗證。
正確執行此操作的方式是驗證client_secret發給誰的組合或相同樣式。 Chrome會給你一個access_token,然後這個access_token將在firebase的後端進行檢查。
Firebase工程師在這裏。由於Chrome擴展程序允許對HTTP請求進行更廣泛的修改,因此您可以在此處配置不同的引薦來源可能不是安全的解決方案。如果您有機會,我想更多地瞭解您的使用案例以及您希望在您的擴展中使用哪種類型的身份驗證 - 請隨時通過電子郵件[email protected]給我發送電子郵件。 – 2013-02-18 19:07:26
會寫信給你關於它的人。在做這件事時,我做了一大堆筆記。目前該系統有3種不同平臺的代碼,並將擴展到大約12個平臺。我想你們可能會覺得它很有趣。 – 2013-02-19 05:47:57