我目前正在开发一个带有django rest框架的API,我对令牌(JWT或OAuth2)身份验证有疑问。
实际上,当认证服务器和资源服务器相同时,我对长期刷新令牌的效用存在疑问。
我对刷新令牌的理解是,当用户进行身份验证时,身份验证服务器会返回一个短期访问令牌和我们存储的长期刷新令牌。
当用户与资源服务器交互时,我们在请求中发送访问令牌,而不是刷新令牌。如果访问令牌已过期,我们会要求新的访问令牌将刷新令牌发送给身份验证服务器。
通过这种方式,如果攻击者获得访问令牌,他将有一个短窗口来使用它,因为它很短暂。
但是在认证服务器=资源服务器的情况下,如果攻击者可以破坏访问令牌,他也可以破坏刷新令牌。而且他可以轻松获得新的访问令牌,我是对的吗?
那么在这种情况下使用刷新令牌系统的目的是什么(认证服务器=资源服务器)?在我看来,这与设置一个长期访问令牌相同,但我不确定......
谢谢