Python——Flash框架——用户认证
一、认证扩展
1、Flask-Login:管理已登录用户的用户会话
2、Werkzeug:计算几码散列值并进行核对
3、itsdangerous:生成并核对加密安全令牌
二、Werkzeug
generate_password_hash(password,method=pbkdg2:sha1,salt_legth=8):这个函数将原始密码作为输入,以字符串形式输出密码的散列值,输出的值可保持在用户数据库中。method=pbkdg2:sha1,salt_legth=8的默认值九能满足大多数要求
check_password_hash(hash,pawword):这个函数的参数是从数据库中取回密码散列值和用户输入密码,返回值为True说明密码正确
三、Flask-Login
1、实现的用户方法
方法 | 说明 |
is_authenticated() | 如果用户已经登录,必须返回True,否则返回False |
is_active() | 如果允许用户登录,必须返回True |
is_anonymous() | 对于普通用户必须返回False |
get_id() | 必须返回用户的唯一表示,使用Unicode编码字符串 |
2、模型类实现
3、在程序的工厂函数初始化
4、login_required修饰器的保护路由:未认证的用户访问这个路由,拦截请求.
from flask.ext.login import login_required
@app.route('/secret')
@login_required
def secret():
return ('Only authenticated users are allowed!')
5、登录用户
6、渲染表单
7、登出用户
from flask.ext.login import logout_user,login_required
@app.route('/logout')
@login_required
def logout():
logout_user()
flash('You hanve been logged out.')
return redirect(url_for('main.index'))
8、用户注册
四、确认账户
Python——Flash框架——用户认证的更多相关文章
- Django框架----用户认证auth模块
一.auth模块 auth模块:针对auth_user表 创建超级管理用户命令: Python manage.py createsuperuser添加用户名添加密码(至少8位)确认密码添加邮箱(可为空 ...
- python 全栈开发,Day104(DRF用户认证,结算中心,django-redis)
考试第二部分:MySQL数据库 6. MySQL中char和varchar的区别(1分) char是定长,varchar是变长. char的查询速度比varchar要快. 7. MySQL中va ...
- python 全栈开发,Day79(Django的用户认证组件,分页器)
一.Django的用户认证组件 用户认证 auth模块 在进行用户登陆验证的时候,如果是自己写代码,就必须要先查询数据库,看用户输入的用户名是否存在于数据库中: 如果用户存在于数据库中,然后再验证用户 ...
- 将Python的Django框架与认证系统整合的方法
将Python的Django框架与认证系统整合的方法 这篇文章主要介绍了将Python的Django框架与认证系统整合的方法,包括指定认证后台和编写认证后台等内容,需要的朋友可以参考下 将Django ...
- web框架开发-Django用户认证组件
可以用认证组件做什么 针对session的缺陷, 跟新数据时,不跟新key键, 用户认证组件是删除后再重建 用户认证组件很多功能可以直接使用 利用用户认证表(auth_user,通过Django自己创 ...
- Django框架 之 Auth用户认证
Django框架 之 Auth用户认证 浏览目录 auth模块 user对象 一.auth模块 1 from django.contrib import auth django.contrib.aut ...
- 061.Python前端Django组件用户认证组件
一 auth认证组件 在使用pymysql,数据库迁移的时候.,默认生成有十张表如下 查看author_user表结构 mysql> desc auth_user; +------------- ...
- ASP.NET Core的身份认证框架IdentityServer4(9)-使用OpenID Connect添加用户认证
OpenID Connect OpenID Connect 1.0是OAuth 2.0协议之上的一个简单的身份层. 它允许客户端基于授权服务器执行的身份验证来验证最终用户的身份,以及以可互操作和类似R ...
- Python开源框架
info:更多Django信息url:https://www.oschina.net/p/djangodetail: Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC) ...
随机推荐
- 为什么选择 Intellij IDEA 作为日常开发工具
作为一个从事 Java 开发的程序员,每天离不开编辑器的帮助.还记得刚开始学习 Java 编程的时候,使用 Eclipse 作为日常开发工具.后来工作以后,需要使用 Intellij IDEA,刚开始 ...
- 使用这些 HTTP 头保护 Web 应用
摘要: 安全是个大学问. 这是关于web安全性系列文章的第 三 篇,其它的可点击以下查看: Web 应用安全性: 浏览器是如何工作的 Web 应用安全性: HTTP简介 目前,浏览器已经实现了大量与安 ...
- es6 Module语法
export 命令 1.概念 export用于定义要输出的变量(let.var.const.function.class),定义的变量与值是动态绑定关系. 2.命令格式 1. export 变量定义 ...
- Oracle11g: datetime
--上一月,上一年 select add_months(sysdate,-1) last_month,add_months(sysdate,-12) last_year from dual; --下一 ...
- word中字体大小(pt)和网页中css设置font-size时用的px大小对应关系
pt与px转换关系为 1px= 0.75pt. 所以word中五号字体(10.5pt)在网页中对应的大小为font-size:14px.(10.5 / 0.75 = 14) 初号44pt 小初36pt ...
- Android中将一个图片切割成多个图片
有种场景,我们想将一个图片切割成多个图片.比如我们在开发一个拼图的游戏,就首先要对图片进行切割. 以下是封装好的两个类,可以实现图片的切割.仅供参考和学习. 一个是ImagePiece类,此类保存了一 ...
- 《Flask Web开发》学习笔记
第一部分 Flask简介 前言:想熟练掌握一门web框架,为以后即将诞生的测试工具集做准备.为什么选择flask要做熟练掌握的一门框架,而不是其他的,最主要的原因是可以随意定制. 特别提醒:这本书的代 ...
- Windows系统资源监控
1.windows自带系统资源监控工具 2.Windows监控的数据来源:Performance Counters 2.1 Performance Counter架构 2.2 Performance ...
- 简单用数组模拟顺序栈(c++)
**栈是一种操作受限制的线性表,太多官方的话我也不说了,我们都知道栈元素是先进后出的,它有两种存储结构,分别是顺序存储结构和链式存储结构. **今天我先记一下顺序存储结构,后面我会加上链式存储结构的. ...
- JMeter测试工具的使用
Jmeter下载地址: http://jmeter.apache.org/download_jmeter.cgi 解压Jmeter压缩包,双击jmeter.bat 右击测试计划 右击线程组 右击HTT ...