Ist es immer noch möglich, Tokens in Firebase 3 serverseitig zu überprüfen?

Ist es immer noch möglich, Tokens in Firebase 3 serverseitig zu überprüfen?

Wir generieren benutzerdefinierte Token (JWT) auf einem Server, auf dem Golang ausgeführt wird, unter Verwendung unseres vorhandenen Authentifizierungssystems (unter Verwendung eines Dienstkontos). Das Token wird auf einem iOS-Client mit @ verwende

FIRAuth.auth()?.signInWithCustomToken(customToken)

Bis dahin funktioniert alles gut. Aber wenn wir das Client-Token an den Server übergeben, der von folgender Adresse abgerufen wurde:

FIRUser.getTokenWithCompletion({ token, error in ..})

Wir können es nicht verifizieren. Das JWT-Token ist mit RS256 signiert und hat eine header.kid, die wir nicht erkennen können. Der öffentliche Schlüssel des Dienstkontos (mit dem das benutzerdefinierte Token signiert wurde) überprüft das Client-Token nicht. Wird der öffentliche Schlüssel benötigt, um das verfügbare Client-Token zu validieren?

Ich weiß, dass es möglich ist, Client-Token mit dem Aufruf "verifyIdToken" in Java oder Javascript zu validieren, aber wir hoffen, dass dies in Golang mit einer Standard-JWT-Bibliothek möglich ist.

Dies alles hat in Firebase 2 (mit HS256 und dem Firebase-Geheimnis) einwandfrei funktioniert.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage