我正在尝试使用JWT令牌实现身份验证/授权 . 现在我有webapp和两个服务 . 当用户在webapp(用户名/密码)中进行身份验证时,我还将从OAuth2服务器获取JWT访问权限和刷新令牌 . 访问令牌有效期为15分钟,刷新令牌永久有效 .

现在,如果用户执行某些操作,则webapp将使用JWT令牌调用service1 . Service1然后验证/授权用户并安排任务在1小时后执行并存储JWT令牌 . 一小时后service1将尝试呼叫service2会发生什么?令牌已过期且service1没有刷新令牌,因此无法使用 .

更确切地说,在实际调用service2之前,service1中的客户端将发现该令牌已过期并将请求重定向到OAuth2服务器以对用户进行身份验证 .

怎么避免这个?自定义授权类型,所以我可以要求没有用户密码的新访问令牌?或者将带有访问令牌的刷新令牌发送到service1?

我肯定错过了一些东西......