webentwicklung-frage-antwort-db.com.de

NodeJS-Authentifizierung mit Firebase

Ich möchte Sitzungen über NodeJS mit Firebase authentifizieren und beibehalten. Der Client kann nicht direkt mit Firebase kommunizieren.

Zusamenfassend:

Client (Browser) <----> NodeJs (Firebase-Admin) <----> Firebase

Ich habe einen Firebase-Client in NodeJS erstellt und dann die Anmeldemethode verwendet:

var firebaseClient = require('firebase');
firebaseClient.initializeApp(config)
firebaseClient.auth().signInWithEmailAndPassword(req.body.email, req.body.password).catch(function(error){
    console.log(error);
})

und dann habe ich eine Route erstellt, um den authentifizierten Benutzer zu überprüfen:

app.get('/check',function(req,res){
    var user = firebaseClient.auth().currentUser
    console.log(user)
})

Mit dieser Methode kann ich nur einen zuvor angemeldeten Benutzer behalten.

Ich möchte firebase-admin verwenden, weiß aber nicht, wie ich die Sitzung aufrechterhalten und Benutzer authentifizieren soll

25
Karol Bilicki

Sie können Clients mit dem Client-SDK auf ihren jeweiligen Geräten/Browsern authentifizieren und diese dazu auffordern, ein ID-Token an einen Back-End-Service zu senden, der mit firebase-admin (dem Admin-SDK) erstellt wurde. Das Admin-SDK bietet Methoden zur Überprüfung der von Clients gesendeten ID-Token: https://firebase.google.com/docs/auth/admin/verify-id-tokens

16