Django自定义认证方式用法示例


Posted in Python onJune 23, 2017

本文实例讲述了Django自定义认证方式。分享给大家供大家参考,具体如下:

创建登录应用

首先创建一个新的login app,用来存放认证用到代码

python manage.py startapp login

修改settings.py中的认证项

AUTHENTICATION_BACKENDS = (
  'login.auth.UsernamePasswordAuth',
)

自定义认证类

在login app下创建auth.py文件,内容如下

#coding:utf-8
from django.contrib.auth.models import User
class UsernamePasswordAuth(object):
  def authenticate(self, username=None, password=None):
    print("UsernamePasswordAuth.authenticate")
    try:
      user = User.objects.get(username__iexact=username)
      if user.check_password(password):
        return user
    except User.DoesNotExist:
      return None
  def get_user(self, user_id):
    print("UsernamePasswordAuth.get_user")
    try:
      user = User.objects.get(pk=user_id)
      return user
    except User.DoesNotExist:
      return None

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
在Python的框架中为MySQL实现restful接口的教程
Apr 08 Python
Python的GUI框架PySide的安装配置教程
Feb 16 Python
Python微信公众号开发平台
Jan 25 Python
django 解决manage.py migrate无效的问题
May 27 Python
python 实现将txt文件多行合并为一行并将中间的空格去掉方法
Dec 20 Python
Python内置random模块生成随机数的方法
May 31 Python
python pandas时序处理相关功能详解
Jul 03 Python
Python 实现的 Google 批量翻译功能
Aug 26 Python
Python实现FLV视频拼接功能
Jan 21 Python
基于python纯函数实现井字棋游戏
May 27 Python
新手学python应该下哪个版本
Jun 11 Python
Python中常见的导入方式总结
May 06 Python
Django实现的自定义访问日志模块示例
Jun 23 #Python
详解Python文本操作相关模块
Jun 22 #Python
python字符串过滤性能比较5种方法
Jun 22 #Python
Python编程实现的简单Web服务器示例
Jun 22 #Python
Python实现复杂对象转JSON的方法示例
Jun 22 #Python
Collatz 序列、逗号代码、字符图网格实例
Jun 22 #Python
基于Python3 逗号代码 和 字符图网格(详谈)
Jun 22 #Python
You might like
jquery 将disabled的元素置为enabled的三种方法
2009/07/25 Javascript
struts2 jquery 打造无限层次的树
2009/10/23 Javascript
轻松创建nodejs服务器(9):实现非阻塞操作
2014/12/18 NodeJs
jquery单击事件和双击事件冲突解决方案
2016/03/02 Javascript
Jquery和JS获取ul中li标签的实现方法
2016/06/02 Javascript
快速掌握jQuery插件WebUploader文件上传
2016/11/07 Javascript
使用JavaScriptCore实现OC和JS交互详解
2017/03/28 Javascript
微信小程序 slider的简单实例
2017/04/19 Javascript
Angular2搜索和重置按钮过场动画
2017/05/24 Javascript
JS回调函数基本定义与用法实例分析
2017/05/24 Javascript
JS利用正则表达式实现简单的密码强弱判断实例
2017/06/16 Javascript
JS实现点击li标签弹出对应的索引功能【案例】
2019/02/18 Javascript
微信小程序使用websocket通讯的demo,含前后端代码,亲测可用
2019/05/22 Javascript
解决vue单页面应用中动态修改title问题
2019/06/09 Javascript
javascript操作向表格中动态加载数据
2020/08/27 Javascript
JavaScript动态生成表格的示例
2020/11/02 Javascript
python操作MySQL数据库的方法分享
2012/05/29 Python
Python的Bottle框架中实现最基本的get和post的方法的教程
2015/04/30 Python
Python选课系统开发程序
2016/09/02 Python
numpy库与pandas库axis=0,axis= 1轴的用法详解
2019/05/27 Python
将pycharm配置为matlab或者spyder的用法说明
2020/06/08 Python
python中time tzset()函数实例用法
2021/02/18 Python
国际礼品店:GiftsnIdeas
2018/05/03 全球购物
美国购买韩国护肤和美容产品网站:Althea Korea
2020/11/16 全球购物
写一个函数,要求输入一个字符串和一个字符长度,对该字符串进行分隔
2015/07/30 面试题
幼儿园运动会入场词
2014/02/10 职场文书
酒店行政人事部经理职务说明书
2014/02/26 职场文书
销售主管竞聘书
2014/03/31 职场文书
2014年医院十一国庆节活动方案
2014/09/15 职场文书
乡镇领导班子四风对照检查材料
2014/09/27 职场文书
入党函调证明材料
2014/12/24 职场文书
大国崛起观后感
2015/06/02 职场文书
PHP对接阿里云虚拟号的实现(号码隐私保护)
2021/04/06 PHP
探究Mysql模糊查询是否区分大小写
2021/06/11 MySQL
Python获取指定日期是"星期几"的6种方法
2022/03/13 Python
Tomcat starup.bat 脚本实现开机自启动
2022/04/20 Servers