Usando Tokens Customizados para fazer solicitações REST ao FB DB como administrador
Estou migrando para o novo banco de dados e as bibliotecas do cliente 3.0. Estou atualizando a parte que gera um token de autenticação personalizado (em nosso servidor) para fazer umaPATCH
para atualizar um recurso no Firebase DB.
Essas solicitações PATCH costumavam ser feitas pelo nosso servidor ao Firebase usandoadmin
reivindicações baseadas nisso:https://www.firebase.com/docs/rest/guide/user-auth.htm
Para o novo banco de dados, estou gerando o token JWT (usandoruby-jwt
) como isso:
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
a solicitação com esse token para o Firebase DB falha com:Missing claim 'kid' in auth header
.