我开发了使用Firebase作为外部认证服务的Phoenix应用程序。我使用Joken库。它要求我使用with_signer函数,该函数需要一个加密密钥。我认为这是Firebase使用JWT签名的密钥。问题是 - 我的假设正确吗?更重要的是 - 我在哪里可以找到这个密钥?
最后,请确保ID令牌由与令牌kid声明对应的私钥签名。从https://www.googleapis.com/robot/v1/metadata/x509/securetoken@system.gserviceaccount.com 获取公钥,并使用JWT库验证签名。使用来自该端点响应中Cache-Control头中的max-age值来了解何时刷新公钥。