带有knox数据库后端的json web令牌
drf-jwt-knox的Python项目详细描述
drf jwt+knox
这个包为django rest提供了一种身份验证机制 基于浏览器中JSON Web Tokens的框架备份 由Knox供电 数据库中的标记。
此软件包的目标是在两个世界中占据更好的位置,包括:
- 可过期的令牌:这些令牌可以在数据库中手动过期, 所以用户可以从所有其他登录的地方或任何地方注销。
- 每次登录尝试使用不同的令牌(每个用户代理),这意味着 用户的会话绑定到特定的计算机,日志记录可以是 按用途分类。
- 基于jwt的令牌,因此令牌可以有一个嵌入的过期时间, 以及其他应用程序的进一步元数据。
- 令牌是通过openssl生成的,因此它们是加密的。 更安全。
- 只有令牌的散列存储在数据库中,因此即使 数据库被转储,攻击者无法模拟用户 通过现有凭证
- 共享jwt私钥的其他应用程序也可以解密 Jwt
用法
将此应用程序和knox添加到 settings.py。
然后,将此应用程序的路由添加到您的某些urlpatterns。
您可以使用verify端点来验证令牌是否有效 或者不是(在微服务架构中可能有用)。
测试
测试使用tox自动进行,并在travis ci上自动运行。你 可以检查travis中的状态,或者从命令运行tox。 行。
贡献
这个项目使用github流方法进行贡献,这意味着 如果你能把补丁作为pull发送,我们将不胜感激 GitHub中的请求。如果出于任何原因,您希望通过 电子邮件,他们也欢迎,并将最终被集成在这里。
许可证
此代码是在apache软件许可证版本2.0下发布的。