2016-05-31 212 views
3

我不是说用firebase进行自定义验证。我需要的是与在应用程序服务器中生成令牌并允许在Firebase中访问的自定义身份验证略有不同。 实际上,我试图通过电子邮件和密码在firebase中进行身份验证,例如,通过该身份验证可以在某些应用程序服务器中访问宁静的服务。 这可能吗? 我认为在某些情况下,令牌可以在Firebase身份验证之后发送到应用程序服务器,并且该服务器将验证身份验证令牌是否针对Firebase。如何根据Firebase验证身份验证令牌?

Client --------authenticates ------->> Firebase 
Client <<--------auth token ---------- Firebase 
Client --------- sends ------------->> Application server (NodeJS) 
App Server ------- validates (auth token) ---->> Firebase 

在此先感谢。

回答

5

你可以用异步为gettoken方法的标记在iOS上,Web和Android平台所提供

网站:

https://firebase.google.com/docs/reference/js/firebase.User#getToken

的iOS: https://firebase.google.com/docs/reference/ios/firebaseauth/interface_f_i_r_user#properties

安卓 https://firebase.google.com/docs/reference/android/com/google/firebase/auth/FirebaseUser.html#public-constructor-summary

并发送该令牌到后台服务器,那么你可以使用在服务器中verifyIdToken方法来验证令牌,并获得令牌的UID

服务器方法 https://firebase.google.com/docs/auth/server#verify_id_tokens

+1

这正是我一直在寻找。谢谢。 – blackjack

+0

verifyIdToken只验证令牌,如何在自定义服务器中处理列入黑名单或禁用的帐户? – Bikash