2017-02-22 184 views
1

我在這裏工作的另一個客戶端項目,這需要無後端。我想使用Firebase,因爲它可以滿足我們所需的一切,實際上我們已經構建了大部分的微型網站。火力地堡及驗證碼爲createUserWithEmailAndPassword

我們不希望我們的要求用戶輸入電子郵件,因爲我們相信這是放棄了太多的身份信息。相反,我們要做的是在註冊時指定@users.ourdomain.com電子郵件&登錄IF如果需要,用戶不希望提供自己的電子郵件地址,並保持或多或少的匿名,但仍然可以再次訪問該網站,其數據。微型網站是一次性體驗(如果你展示你的朋友,也許有兩次體驗),沒有人會在一年內忘記密碼回來,所以這與這種情況無關。

我發現沒有辦法完全保護createUserWithEmailAndPassword功能,因爲任何人都可以發送垃圾郵件並創建大量帳戶並使用所有用戶名或電子郵件。如果沒有爲Firebase實施單獨的後端/令牌認證,是否有任何方法可以整合類似captcha的系統?

我現在能想到的唯一的辦法是火了AWS LAMBDA只是爲了處理驗證碼& Tokening。但是,當然任何解決方案都將消除後端的必要性,因此更爲可取。其他人之前是否有類似的問題?如果是這樣,你最終如何解決它?

非常感謝您的時間,快樂的編碼。

回答

4

火力地堡認證支持its documentation列出的身份驗證提供者。它的電子郵件+密碼提供程序沒有內置的captcha支持。但說實話,這聽起來像是你可以用anonymous authentication達到你的大部分目標,這將會簡單得多。

除了你似乎關心惡意用戶創建。雖然這絕對是一種可能性,但它對設計良好的應用程序沒有影響。身份驗證(知道你是你)對授權沒有影響(你可以做什麼)。有關該主題的一個很好的答案,請參閱How to prevent other access to my firebase

+0

尋找更深的匿名身份驗證,我已經意識到有轉換爲永久帳戶的選項。幾乎解決了我們最大的問題。太感謝了! – johnozbay

+0

@Frank van Puffelen,有防止惡意用戶創建的內置方法嗎? captcha是我能想到的唯一的自定義解決方案,有任何內置的安全方法來防止它?像嘗試記錄androidId,deviceId或Firebase可以知道的其他因素? – yarin