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

yipeiwu_com7年前Python基础

本文实例讲述了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 Socket编程技巧总结》、《Python URL操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》

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

相关文章

Python实现ping指定IP的示例

Python实现ping指定IP的示例

贴代码: import os import sys iplist = list() ip = '192.168.1.11' # ip = '172.24.186.191'...

详解Django rest_framework实现RESTful API

详解Django rest_framework实现RESTful API

一、什么是REST 面向资源是REST最明显的特征,资源是一种看待服务器的方式,将服务器看作是由很多离散的资源组成。每个资源是服务器上一个可命名的抽象概念。因为资源是一个抽象的概念,所以...

python脚本开机自启的实现方法

问题描述:将python脚本设置成开机自启。 环境:windows7 64位 前段时间,一直想把文件打包成exe文件,然后设置成开机自启,虽然感觉很装逼,但是使用pyinstaller打...

python实现黑客字幕雨效果

python实现黑客字幕雨效果

本文实例为大家分享了python实现字幕雨效果的具体代码,供大家参考,具体内容如下 #################################### #name : HAC...

python如何实现视频转代码视频

python如何实现视频转代码视频

本文实例为大家分享了python如何实现视频转代码视频的具体代码,供大家参考,具体内容如下 # -*- coding:utf-8 -*- #coding:utf-8 import...