在 Tapkey 上处理过期 Firebase 令牌的最佳方法

Best approach for dealing with expired Firebase tokens on Tapkey

我正在使用 Firebase 验证我的用户,并使用令牌交换 API 来检索 tapkey 令牌。

我遇到的问题是用于验证令牌的 Firebase 证书会定期过期,如 Firebase 网站上所述:

Finally, ensure that the ID token was signed by the private key corresponding to the token's kid claim. Grab the public key from https://www.googleapis.com/robot/v1/metadata/x509/securetoken@system.gserviceaccount.com and use a JWT library to verify the signature. Use the value of max-age in the Cache-Control header of the response from that endpoint to know when to refresh the public keys.

当前 Firebase 证书的最长期限为 22963 秒(在我撰写本文时,刚刚超过 6 小时)以及将新 public 密钥上传到 Tapkey 的过程

我正在考虑编写脚本在旧证书过期时下载新证书,并提取 public 密钥。 Tapkey 是否有一个 API 端点我可以用来 post 我更新的 public 键,或者我可以在这里采用另一种方法吗?

谢谢

目前没有 public api 用于更新 public 密钥,但 Tapkey 能够使用 Firebase oidc 发现文档 url 而不是 public 键。如果已配置,Tapkey 将自动处理此类密钥翻转。

Firebase 发现文档 urls 通常看起来像 https://securetoken.google.com/[firebase-project-id]/.well-known/openid-configuration

但是,此功能目前 public 不可用。向 Tapkey 支持发送激活该功能的请求,他们将为您启用。