为什么Firebase Auth同时具有刷新令牌和ID令牌



本文档说明:

Firebase ID令牌寿命短,持续一个小时;刷新令牌可以用于检索新的ID令牌。

我说得对吗?刷新令牌本质上同时充当客户端设备的密码和标识,而拥有刷新令牌意味着能够检索ID令牌,从而能够作为与该刷新令牌相关联的用户进行身份验证?

如果是这样的话,拥有这两个不同的代币的目的是什么?

谢谢。

ID令牌是一个JWT,它证明用户已经进行了身份验证,但不包含足够的信息来对用户进行身份验证。它是一个具有内置到期时间的承载令牌(对于Firebase,即在铸造后一小时(。它可以很容易地解码(例如在jwt.io上(,使它们非常容易使用。所有这些都使传递这种令牌类型作为身份验证的证据,并在客户端应用程序中使用它更加安全。

刷新令牌是一个长期存在的OAuth2令牌,在某种程度上是用户凭据的代理。它可以用于生成ID令牌,但接收方无法对其本身进行解码。它应该只在服务器上使用,以确定用户的授权。

另请参阅:

  • Auth0中的id_token和access_token之间有什么区别
  • 揭开Firebase身份验证令牌的神秘面纱
  • 身份证和访问证:有什么区别
  • AccessToken Vs ID Token Vs Refresh Token-什么?为什么?什么时候

最新更新