惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

酷 壳 – CoolShell
酷 壳 – CoolShell
H
Hacker News: Front Page
P
Palo Alto Networks Blog
T
ThreatConnect
Apple Machine Learning Research
Apple Machine Learning Research
博客园_首页
T
True Tiger Recordings
P
Privacy & Cybersecurity Law Blog
B
Blog
IT之家
IT之家
Last Week in AI
Last Week in AI
F
Full Disclosure
Hacker News: Ask HN
Hacker News: Ask HN
C
Comments on: Blog
Microsoft Azure Blog
Microsoft Azure Blog
C
Cybersecurity and Infrastructure Security Agency CISA
Microsoft Security Blog
Microsoft Security Blog
博客园 - 【当耐特】
N
News and Events Feed by Topic
NISL@THU
NISL@THU
腾讯CDC
雷峰网
雷峰网
Security Latest
Security Latest
李成银的技术随笔
M
Microsoft Research Blog - Microsoft Research
L
LangChain Blog
L
Lohrmann on Cybersecurity
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
C
Check Point Blog
Y
Y Combinator Blog
Recent Announcements
Recent Announcements
博客园 - Franky
N
News | PayPal Newsroom
V
V2EX
A
About on SuperTechFans
The Register - Security
The Register - Security
月光博客
月光博客
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Google Online Security Blog
Google Online Security Blog
MyScale Blog
MyScale Blog
Cisco Talos Blog
Cisco Talos Blog
Vercel News
Vercel News
WordPress大学
WordPress大学
C
Cyber Attacks, Cyber Crime and Cyber Security
The Hacker News
The Hacker News
IntelliJ IDEA : IntelliJ IDEA – the Leading IDE for Professional Development in Java and Kotlin | The JetBrains Blog
IntelliJ IDEA : IntelliJ IDEA – the Leading IDE for Professional Development in Java and Kotlin | The JetBrains Blog
爱范儿
爱范儿
A
Arctic Wolf
L
LINUX DO - 最新话题
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More

博客园 - hgdfr

Django1.5内置的用户认证系统介绍(之五)在admin后台管理用户 --by hillfree Django1.5内置的用户认证系统介绍(之四)Authentication in Web requests --by hillfree Django1.5内置的用户认证系统介绍(之三)权限与授权--by hillfree Django1.5内置的用户认证系统介绍(之二)使用User对象--by hillfree Django REST Framework Tutorial 5:关系与超链接API(中文版教程)by hillfree Django REST Framework Tutorial 4:认证与权限(中文版教程)by hillfree Django REST Framework Tutorial 3:基于类的Views(中文版教程)by hillfree Django1.5+Python3.3下groundwork的使用 Django1.5中设置静态目录的简要说明 参照《鲜活的数据:数据可视化指南》第2章:抓取网页数据(历史天气记录)的Python程序 - hgdfr Python3.3中如何产生伪随机数 《鲜活的数据:数据可视化指南》第2章 收集数据 Python3.3源码 CSCW领域的“老”词和“新”词 FOAF简介和朋友圈子 Class Library类型的工程难道不能用app.config? 配置文件中的DataDirectory在那里设置? 自己写的类需要重写ToString(), HashCode(), Equal()吗? 注释中如果出现尖括号怎么办?“<” - hgdfr - 博客园 Access Control Issues 有关访问控制
Django1.5内置的用户认证系统介绍(之一)--by hillfree
hgdfr · 2013-04-13 · via 博客园 - hgdfr

说明:网上有关Django用户系统的内容不少,但是好像没有针对Django1.5的。可能是因为Django1.5目前用的人还不多吧。(python3.x貌似也是这种情况)。因为自己要用,所以顺手在学习官方文档的过程中,边看边译。基本忠于原文(>95%),小部分太啰嗦的内容就适当意译、简化了。后续还会加入部分自己的体会(会注出),供参考。如有错讹、不准确之处,还请大家指教。

source:https://docs.djangoproject.com/en/1.5/topics/auth/

Django内置了一个用户认证系统(user authentication system,下面简称UAS),用来处理用户账号(user accounts)、群组、权限和基于cookie的用户sessions。这部分文档将介绍其基本实现原理以及如何根据你的需求去扩展或定制。

概述 Overview

Django认证系统包括认证管理(authentication)和权限管理(authorization)两部分。简单来说,认证就是核实用户的身份,而授权就是确定认证用户可以做什么。这里的术语认证(authentication)用来指代这两部分的内容。

Django UAS包括以下部分:

  • 用户(Users)
  • 权限(Permissions):通过 Binary (yes/no) 标志位来指示用户是否可以执行特定操作;
  • 群组(Groups):用一种通用的方式来给一组指定的用户命名和授权;
  • 一个可配置的密码哈希系统(password hashing system)
  • 一组表单(Forms)和 视图(view)工具
  • 一个可插拔的后端系统

Django UAS的目标是广泛的通用性,所以并不一定包括某些其他Web认证系统提供的特性。如有这些需求则可以通过第三方的包(packages)来实现

  • 密码强度检查(Password strength checking)
  • 登录请求超量限制(Throttling of login attempts)
  • 支持第三方认证(例如: OAuth)

安装 Installation

相关认证支持被放在Django contrib模块中(命名空间: django.contrib.auth).使用时,需要修改项目的settings.py配置文件:

(1)在INSTALLED_APPS中加入下面的两项:

  1. 'django.contrib.auth' :包括认证框架核心功能和基本模型;
  2. 'django.contrib.contenttypes' 是Django的内容类型系统(content type system),用它来讲权限分配到你制定的模块。

(2)在 MIDDLEWARE_CLASSES 中加入下面两项:

  1. SessionMiddleware 用来管理跨请求 sessions ;
  2. AuthenticationMiddleware用sessions关联用户和请求

配置完成后,执行 manage.py syncdb 命令来创建相关的数据库表,如果是第一次运行,还会提示你创建一个超级用户。

使用介绍 Usage

使用Django UAS缺省功能:

缺省功能的API参考手册(API reference for the default implementation

定制化用户和认证(Customizing Users and authentication

Django中的密码管理(Password management in Django