django认证系统-user对象(创建,改密,认证)

User对象

User对象是认证系统的核心。它们通常表示与你的站点进行交互的用户,并用于启用限制访问、注册用户信息和关联内容给创建者等。在Django的认证框架中只存在一种类型的用户,因此诸如‘superusers‘或管理员‘staff‘用户只是具有特殊属性集的user对象,而不是不同类型的user对象。

创建users

创建users最直接的方法是使用create_user()辅助函数:

>>> from django.contrib.auth.models import User
>>> user = User.objects.create_user(‘john‘, ‘[email protected]‘, ‘johnpassword‘)
from django.contrib.auth.models import User

def create_user(request):
    #auth_user
    # user = User.objects.create_user(‘john‘, ‘[email protected]‘, ‘johnpassword‘)
    #superuser python manage.py createsuperuser --username=joe --email=[email protected]
    u = User.objects.get(username=‘john‘)
    u.set_password(‘new password‘)
    u.save()
    return HttpResponse("success-----%s"%u)

创建成功后见数据库auth_user表

创建superusers

使用createsuperuser命令创建superusers:

$ python manage.py createsuperuser --username=joe [email protected]

或者

$ python manage.py createsuperuser

接下来依次输入用户密码即可
成功后见auth_user表

修改密码

>>> from django.contrib.auth.models import User
>>> u = User.objects.get(username=‘john‘)
>>> u.set_password(‘new password‘)
>>> u.save()成功后见auth_user表,密码已经改变 

认证Users

authenticate(**credentials)[source]

认证一个给定用户名和密码,请使用authenticate()。它以关键字参数形式接收凭证,对于默认的配置它是usernamepassword,如果密码对于给定的用户名有效它将返回一个User对象。如果密码无效,authenticate()返回None。例子:

from django.contrib.auth import authenticate
user = authenticate(username=‘john‘, password=‘secret‘)
if user is not None:
    # the password verified for the user
    if user.is_active:
        print()
    else:
        print()
else:
    # the authentication system was unable to verify the username and password
    print()
def auth(request):
    user = authenticate(username=‘john‘, password=‘new password‘)#john
    # user = authenticate(username=‘john‘, password=‘johnpassword‘)#None
    print(user)
    if user is not None:
        # the password verified for the user
        if user.is_active:
            print("验证成功,已激活")
        else:
            print("验证成功,未激活")
    else:
        # the authentication system was unable to verify the username and password
        print("没有此用户")
    return HttpResponse(user)
john
验证成功,已激活

原文地址:https://www.cnblogs.com/pfeiliu/p/12011826.html

时间: 2024-08-28 08:51:08

django认证系统-user对象(创建,改密,认证)的相关文章

Django用户认证系统(二)Web请求中的认证

在每个Web请求中都提供一个 request.user 属性来表示当前用户.如果当前用户未登录,则该属性为AnonymousUser的一个实例,反之,则是一个User实例. 你可以通过is_authenticated()来区分,例如: if request.user.is_authenticated(): # Do something for authenticated users. else: # Do something for anonymous users. 登陆login login(

【django后端分离】Django Rest Framework之认证系统之redis数据库的token认证(token过期时间)

1:登录视图 redis_cli.py文件: import redis Pool= redis.ConnectionPool(host='localhost',port=6379,decode_responses=True) 登录视图文件:import redisfrom utils.redis_cli import Pool    # 创建redis连接池 class UserLogin(APIView): """ 用户登陆认证: 登录成功更新token值,并且返回给前端,

django 认证系统--2

使用django的认证系统 User 对象 User是认证系统的核心.典型代表是用户和你的站点进行交互还有限制访问.注册用户等等.django认证框架中,只存在一个User类,像'superuser'和'staff'等等都是User的对象,只是某些属性不一样而已. class User(AbstractUser): """ Users within the Django authentication system are represented by this model.

django自带认证系统

板块 用户 权限 密码哈希系统 表单和视图工具 django内置认证系统不支持的板块 密码强度 ---->我们通过第三方包解决 限制登录次数 ----> 自定义中间件解决 第三方验证,如qq登录 微信登录等 --->第三方包与对应的开发者文档 对象级权限 --->django只支持到模型级 认证app django 自带的认证系统 实际上就是一个app 我们可以在settings里找到对应的 django.contrib.auth 这个app . 里面封装的就是django内置的认

Django用户认证系统

一. 认证系统概要 create_user 创建用户 authenticate 验证登录 login 记住用户的登录状态 logout 退出登录 is_authenticated 判断用户是否登录 login_required 判断用户是否登录的装饰器 二. 创建用户和验证登录 当用户注册的时候用create_user(username,password,email)默认情况下is_active=True,is_staff=False,is_superuser=False. 底层将passwor

详解WiFi认证系统的人性化操作——时讯企业wifi

越复杂的东西,在使用起来的时候就非常的不便.就拿简单的骑摩托车来说,跨骑式的摩托车有离合器.发动机.机油.换挡.点火等多门操作,一般人学习熟练的话,需要花很长的时间.而踏板式摩托车只需要轻轻带动油门就走,几乎不用学就可以启动,非常的方便,这也就是为什么在摩托车市场当中,后者比前者销量多的原因.看来操作体验是影响客户选择的一大因素. 由此引申,今天咱们就要来讲解一下WiFi认证系统的人性化操作.各领域都在向人性化操作方向进军 进入科技腾飞的时代,各种电子产品出现在咱们的身边,我们不妨看看在市场中,

Django用户认证系统(一)User对象

User对象 User对象是认证系统的核心.用户对象通常用来代表网站的用户,并支持例如访问控制.注册用户.关联创建者和内容等.在Django认证框架中只有一个用户类,例如超级用户('superusers’)或('staff')用户只不过是相同用户对象设置了不同属性而已. 缺省字段Fields username 用户名,必需字段.30个字符或更少,可以包含 _, @, +, . 和 - 字符. first_name可选. 30 characters or fewer. last_name可选. 3

django 用户认证系统

django认证系统包含三个部分:用户.权限和分组 安装 django项目默认启用了认证系统,如果不是使用django-admin.py创建项目的可以通过在settings配置文件里面的INSTALLED_APPS的列表里面添加django.contrib.auth和django.contrib.contenttypes这两项然后运行manage.py syncdb命令创建对应的数据库表即可 用户Users 在Django-1.4.10\django\contrib\auth这个目录下有一个mo

Django Authentication 用户认证系统

一. Django的认证系统 Django自带一个用户认证系统,用于处理用户账户.群组.许可和基于cookie的用户会话. 1.1 概览 Django的认证系统包含了身份验证和权限管理两部分.简单地说,身份验证用于核实某个用户是否是合法用户,权限管理则是决定一个合法用户具有哪些权限.这里,"身份验证"这个词同时代指上面两部分的含义. 系统主要包括: 用户 许可 组 可配置的密码哈希系统 用于用户登录或者限制访问的表单和视图工具 可插拔的后端 类似下面的问题,请使用第三方包: 密码强度检