首页 > 代码库 > Django的用户认证----介绍

Django的用户认证----介绍

Django自带了一个用户认证系统。它处理用户账户、组、权限和基于cookie的用户会话。

概括

Django认证系统处理认证和授权。简单的说,认证是验证一个用户被声明为谁,授权是确定一个认证的用户允许做什么。

认证系统由下面的组成:

  • 用户

  • 权限:二进制标志,标明用户是否可以执行指定的任务

  • 组:应用标签和权限给多个用户的通用方法

  • 可配置的密码hash系统

  • 用户登录的表单和视图工具或者限制的内容

  • 可插入模块的后端系统

Django的认证系统只提供简单的方法,并不提供在web认证系统找到的一些特性。解决这些问题的方法是使用第三方插件:

  • 密码强制性检查

  • 登录尝试限制

  • 针对第三方认证(例如OAuth)

安装

     django.contrib.auth中,认证支持已经捆绑作为一个Djangocontib模块。默认情况下,所需配置已经包含在由django-admin startproject生成的setting.py中,在INSTALLED_APPS设置中列出的两个项目:

     django.contrib.auth

         包含认证框架的核心和默认的模块

     django.contrib.contenttypes

         Django的内容类型系统,允许权限和你创建的模块想关联

   MIDDLEWARE_CLASSES设置中包括这些项目:

      SessionMiddlemare

          通过请求管理会话

      AuthenticationMiddleware

          使用会话关联用户和请求

      SessionAuthenticationMiddleware

         密码更改后,用户退出用户其它的会话

    有了这些设置,运行manage.pymigrate为认证相关的model和权限创建必要的数据库表。




由于个人技术所限有不足之处还请各位指出。可以通过如下方式联系到笔者:

Linux运维开发群   298324302

北京linux运维求职招聘    153677549


本文出自 “长街听风人” 博客,请务必保留此出处http://kevinhao.blog.51cto.com/5204735/1857866

Django的用户认证----介绍