Android 刷新令牌

Android refresh token

我正在开发一个 Android 应用程序,我对令牌和刷新令牌有点困惑。 基本上现在,在用户使用手机号码和短信发送的代码登录后,身份验证服务器 returns 将用于访问所有 api 的访问令牌。对于身份验证服务器,我使用了 Laravel 和 jwt-auth 库。 当访问令牌过期时,我将使用存储在 AccountManager 中的用户凭证请求一个新的访问令牌。 这种认证方式是否正确?

或者我丢失了刷新令牌,当它过期时我要求一个新的访问令牌?

提前致谢, 丹妮尔

我认为最好同时使用 tokenrefresh token,这样当您的 access token 过期时,您不必总是发送您的凭据。此外,将用户凭据存储在客户端设备上并不安全,您应该将此信息存储在您的服务器上,并要求用户在需要时输入。

这里是我如何实现 token/refresh 令牌过程:

1 :您将 credentials 发送到您的身份验证服务器(它会发回给您一个 access token (我使用的 JSON web token 类型未存储在数据库中)和一个refresh token(即存储在数据库中)。

2 :当您向服务器发出请求时,您会检查 access token 是否已过期,如果已过期,您会使用 refresh token 中的参数向您的身份验证服务器发出请求为了有一个新的 access token (取决于你的服务器的配置,它可以给你一个新的 access token ,或者一对新的 access tokenrefresh token 我更喜欢 ).

3:如果 refresh token 已过期,您可以使用 credentials 请求获得一对新的令牌。