【发布时间】:2021-01-23 08:32:24
【问题描述】:
我正在尝试使用 djangorestframework-simplejwt 为我的 Django REST 应用程序实现 JWT。我注意到刷新令牌和访问令牌没有存储在数据库中。那么它们存放在哪里呢?
提前致谢。
【问题讨论】:
标签: django django-rest-framework jwt jwt-auth django-rest-framework-simplejwt
我正在尝试使用 djangorestframework-simplejwt 为我的 Django REST 应用程序实现 JWT。我注意到刷新令牌和访问令牌没有存储在数据库中。那么它们存放在哪里呢?
提前致谢。
【问题讨论】:
标签: django django-rest-framework jwt jwt-auth django-rest-framework-simplejwt
这就是 JWT 的重点,它们不需要服务器端存储。所有信息都被烘焙到令牌本身中,它是签名的,只有服务器拥有的秘密(应该有,如果你在没有安全漏洞的情况下正确执行)。服务器读取 JWT 中的信息并确认它已使用秘密签名,只有它自己应该拥有。如果成功,它将信任 JWT 中包含的信息。因此它不需要在任何数据库中查找任何内容。
【讨论】:
.user 属性访问。用户通过 JWT 进行身份验证的事实大部分是透明的。如果您想深入了解此过程,则需要更详细。