django-rest框架的身份验证
django-knox-rest的Python项目详细描述
django rest诺克斯
django rest auth的身份验证模块
Knox为Django REST Framework提供易于使用的身份验证,其目的是允许 对于基于REST的应用程序中的常见模式 额外的努力;并确保连接保持安全。在
Knox身份验证是基于令牌的,类似于TokenAuthentication
内置于DRF。但是,它克服了
默认实现:
- 在
DRF令牌限制为每个用户一个。这并不方便 从多个设备安全地登录,因为令牌是共享的。 它还要求在服务器端注销all设备 需要注销(即删除令牌)。在
Knox为登录视图的每个调用提供一个令牌-允许每个令牌 客户端拥有自己的令牌,在服务器端被删除 当客户端注销时。在
Knox还为登录的客户机提供了一个删除all的选项 服务器拥有的令牌-强制所有客户端重新验证。在
在 - 在
DRF令牌未加密地存储在数据库中。这将允许 如果 数据库被破坏。在
Knox令牌只以加密形式存储。即使 数据库被盗,攻击者无法登录 用偷来的证件。在
在 - 在
DRF令牌跟踪它们的创建时间,但没有内置机制 代币到期。Knox令牌可以在中配置过期 应用程序设置(默认值为10小时。)
在
更多信息可在 Documentation
在本地运行测试
如果需要在本地调试测试,并且安装了docker:
只需运行./docker-run-test.sh
脚本,它将在每个Python中运行测试套件/
Django版本。在
您也可以简单地在根文件夹中运行常规的tox
,但这将使测试
Python/Django版本有点棘手。在
整理文件
我们的文档由Mkdocs生成。在
关于如何在本地安装,可以参考他们的文档。在
另一个选择是在此存储库中使用mkdocs.sh
。
它将在docker容器中运行mkdocs。在
运行不带任何参数的脚本将触发serve
命令。
服务器在本地主机上的端口8000上公开。在
{5>将配置端口到服务器 可以使用以下环境变量:
MKDOCS_DEV_PORT="8080"
{cd7>你也可以通过这个命令:
^{pr2}$有关更多信息,请查看Mkdocs documentation。在
- 项目
标签: