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

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

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

kongxx   2021-03-24 我要评论
想了解Django自定义认证方式用法示例的相关内容吗,kongxx在本文为您仔细讲解Django自定义认证方式的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:Django,自定义,认证,下面大家一起来学习吧。

本文实例讲述了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程序设计有所帮助。

猜您喜欢

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们