Przeprowadzam migrację do nowej bazy danych i wersji 3.0 klienta. Aktualizuję część, która generuje niestandardowy token autoryzacji (na naszym serwerze), aby wykonać PATCH
, aby zaktualizować zasób w bazie danych Firebase DB.Używanie niestandardowych tokenów do wysyłania żądań REST do FB DB jako administrator
tych wniosków PATCH używanych być wykonane przez nasz serwer do Firebase użyciu admin
roszczeń na podstawie tego: https://www.firebase.com/docs/rest/guide/user-auth.htm
dla nowego DB, mam generowania tokenu JWT (używając ruby-jwt
) tak:
payload = {
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")
Żądanie z tym tokenem do bazy danych Firebase DB kończy się niepowodzeniem z: Missing claim 'kid' in auth header
.
Krzyż post: Czy https://groups.google.com/forum/#!topic/firebase-talk/XTJfiltow-I –