1
我正在通過Firebase SDK將用戶身份驗證客戶端到我的應用程序。 然後啓動客戶端會話。然後我希望用戶能夠向PHP端點發布一些數據。我希望PHP腳本檢查請求是否來自經過身份驗證的用戶,然後驗證其餘數據。如果一切正常,我們最後確定操作。Firebase:如何使用php服務器端腳本檢查客戶端會話
我認爲做這樣的:
- 用戶進行身份驗證客戶端
- 在驗證事件的JWT令牌與用戶ID的請求是通過AJAX發出客戶端的專用PHP腳本。一旦生成令牌,它就存儲在會話cookie中。
- 表單提交將攜帶JWT令牌,端點將解碼令牌並檢查存儲在其中的uid是否是在Firebase數據庫中註冊的有效用戶ID。
從安全的角度來看好的還是可怕的想法?
如果您使用Firebase身份驗證中的'uid'作爲用戶標識,則可以使用[與Firebase會話關聯的JWT](https://www.firebase.com/docs/web/api/ firebase/getauth.html)而不是自己創建一個。 –
是的,但我肯定缺少一些東西:我如何使用令牌來驗證用戶是否有活動的會話。我解碼了令牌,它只有uid和iat字段。所以我知道它是在某個特定時間發佈的,但我怎麼能確定它是有效的?有沒有這樣的方法通過REST接口應用於服務器端? –
取決於您對活動會話的定義。 JWT本身將在您的Firebase實例的登錄和身份驗證頁面上指定的時間內有效。您可以通過使用其REST API來嘗試讀取/寫入,只有經過身份驗證的用戶才能進行驗證。 –