我的设置
我使用 React 和 Django 作为前端和后端。出于授权目的,我选择了 Django-rest-knox,它通过存储在数据库中的令牌工作。
我的问题
现在,如果攻击者获得了令牌(登录后存储在客户端的本地存储中),他可以做任何用户能够做的事情。令牌有一些到期时间,并且可以由用户自己销毁用户的所有令牌。但我想站在更安全的一边。
我的解决方案
我的想法是将所有令牌映射到用于登录的(用户的)IP 地址。这样,令牌只能在用于登录的机器上使用。将在后端检查令牌与 IP 地址的关系。
我的问题
- 这个想法是否可行,或者这些 IP 地址的性质是否有任何破坏我的意图?
- 获取客户端 IP 地址的最佳方法是什么?
- 您认为这是一种安全的方法吗?
谢谢您的帮助!