Verwenden Sie benutzerdefinierte Token, um REST-Anforderungen als Administrator an die FB-Datenbank zu senden.
Ich migriere auf die neuen Datenbank- und 3.0-Client-Bibliotheken. Ich aktualisiere den Teil, der ein benutzerdefiniertes Authentifizierungstoken generiert (auf unserem Server), um ein @ zu machePATCH
, um eine Ressource in der Firebase-Datenbank zu aktualisieren.
Diese PATCH-Anfragen wurden von unserem Server mit @ an Firebase gesendeadmin
Ansprüche basierend auf diesem:https: //www.firebase.com/docs/rest/guide/user-auth.ht
Für die neue Datenbank generiere ich das JWT-Token (mitruby-jwt
) so was
pa,yload = {
aud: "https://identitytoolkit.googleapis.com/google.identity.identitytoolkit.v1.IdentityToolkit",
claims: custom_claims.merge({ admin: true }),
exp: now_seconds + (60 * 60), # Maximum expiration time is one hour
iat: now_seconds,
iss: service_account_email,
sub: service_account_email,
uid: uid
}
JWT.encode(payload, private_key, "RS256")
A PATCH
Anfrage mit diesem Token an die Firebase-Datenbank schlägt fehl mit:Missing claim 'kid' in auth header
.