Django Rest Framework 过期令牌认证插件安装与使用教程

Django Rest Framework 过期令牌认证插件安装与使用教程

django-rest-framework-expiring-tokensExpiring Token Auth for Django Rest Framework项目地址:https://gitcode.com/gh_mirrors/dj/django-rest-framework-expiring-tokens

本教程将引导您了解并设置 django-rest-framework-expiring-tokens 插件,这是一款专为 Django Rest Framework 设计的扩展,用于实现令牌自动过期功能,增强API的安全性。

1. 项目目录结构及介绍

该GitHub仓库的目录结构大致如下:

.
├── LICENSE             # 许可证文件
├── README.md           # 项目说明文档
├── runtests.py         # 测试运行脚本
├── setup.cfg           # 配置文件,用于控制setuptools行为
├── setup.py            # 包的安装脚本
├── tests               # 测试代码目录
│   ├── ...
├── rest_framework_expiring_authtoken  # 主要源码目录
│   ├── __init__.py
│   └── ...              # 其他相关Python模块
└── tox.ini             # Tox测试环境配置文件(可选)
  • LICENSE 文件包含了此项目使用的 BSD-2-Clause 开源许可协议。
  • README.md 提供了项目简介、安装步骤以及基本配置方法。
  • runtests.py 是执行单元测试的脚本。
  • setup.pysetup.cfg 用于在PyPI上发布此包,并指导如何安装该库。
  • rest_framework_expiring_authtoken 目录包含了扩展的核心代码。

2. 项目的启动文件介绍

虽然这个项目并不直接提供一个“启动文件”让你的整个应用跑起来,但关键在于正确集成到您的Django项目中。主要交互点是通过修改您的Django项目设置(settings.py)来配置认证方式和添加相应的AppINSTALLED_APPS列表中,以及可能更改默认的auth token获取视图为插件提供的obtain_expiring_auth_token

3. 项目的配置文件介绍

Django项目的settings.py配置

  1. 添加到INSTALLED_APPS: 确保 'rest_framework', 'rest_framework.authtoken', 以及 'rest_framework_expiring_authtoken' 加入到了你的 INSTALLED_APPS 列表。

    INSTALLED_APPS = [
        # Other apps...
        'rest_framework',
        'rest_framework.authtoken',
        'rest_framework_expiring_authtoken',
    ]
    
  2. 设置令牌过期时间: 在 settings.py 中定义 EXPIRING_TOKEN_LIFESPAN 来指定令牌的有效时长,默认是30天,这里以25天为例:

    import datetime
    EXPIRING_TOKEN_LIFESPAN = datetime.timedelta(days=25)
    
  3. 更新认证机制: 根据需要,你可以全局或按视图调整认证类为 ExpiringTokenAuthentication

    对于全局改变,调整 REST_FRAMEWORK 设置:

    REST_FRAMEWORK = {
        'DEFAULT_AUTHENTICATION_CLASSES': (
            'rest_framework_expiring_authtoken.authentication.ExpiringTokenAuthentication',
        )
    }
    
  4. URL配置: 替换原有的 obtain_auth_token 视图为插件的 obtain_expiring_auth_token

    from rest_framework_expiring_authtoken.views import obtain_expiring_auth_token
    
    urlpatterns = [
        # ...
        path('api-token-auth/', obtain_expiring_auth_token),
    ]
    

完成上述配置后,您的Django Rest Framework应用程序就能利用带过期功能的token进行安全的API认证了。记得执行迁移命令以确保数据库模型的同步更新,特别是在Django 1.7及以上版本。

以上就是关于django-rest-framework-expiring-tokens的基本集成与配置介绍,遵循这些步骤可以顺利启用令牌的自动过期特性。

django-rest-framework-expiring-tokensExpiring Token Auth for Django Rest Framework项目地址:https://gitcode.com/gh_mirrors/dj/django-rest-framework-expiring-tokens

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

郁欣秋

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值