https://www.bilibili.com/video/av53870541/?p=33

通过在数据模型中定义函数来实现加密

from werkzeug.security import generate_password_hash,check_password_hash

class User(db.Modle):
  id = db.Column(db.Integer,primary_key=True,autoincrement=True)
  name = db.Colmn(db.String(20), unique=True)
  password_hash =db.Colmn(db.String(128))    # 坑 字段不能少于128
 
  @property
  def password(self):
    print('xxxx随意')   @password.setter
  def passowrd(self,password):
    self.password_hash = generate_password_hash(password)   def check_password(self,password):
    return check_password_hash(self.password_hash,passowrd)
 

通过装饰器装饰函数

其中@property 将函数变为模型中的字段,但并不会影响到模型的字段.如果进行访问只会得到输出的字符串,不会被查看到密码

通过@pasword.setter 将函数password变为可修改 ,通过赋值来修改,赋值途中使用

from werkzeug.security import generate_password_hash 加密,通过self添加到模型数据库中
def check_password(self,password): 这是通过数据库中记载的加密密码和输入的密码进行一个对比,相同则为trun
# 往数据库中添加数据

user = User()
user.name = '张三' # 注意 模型中没有password这个字段,只有同名函数,通过装饰器@property将其变为(伪)字段 ,可以进行加密,不对模型产生改变
# @password.setter 变为能将其加密保存
user.password = ''
db.session.add(user)
db.session.commit() # ---------------------------------------
# 登录验证
user = User.query.filter(User.name=form.name.data).first()
if user:
# 使用字段中的验证函数进行hash验证,如果为正则往下
if user.check_password_hash(form.password.data):
print('密码验证成功')
session['user_name'] = user.name
return render_templates('home.html')
else:
flash('密码不正确')
return render_templates('login.html')
return render_templates('logon.html',登录表单=登录表单)

user.password_hash 访问的是加密过后的密码,不能直接看到.只能使用check_password_hash() 来进行确定,防止密码明文泄露

flask 密码加密 视频资料的更多相关文章

  1. 密码加密与微服务鉴权JWT

    博客学习目标 1.用户注册时候,对数据库中用户的密码进行加密存储(使用 SpringSecurity). 2.使用 JWT 鉴权认证. 一.BCrypt 密码加密 1.常见的加密方式 任何应用考虑到安 ...

  2. C#:使用MD5对用户密码加密与解密

    C#中常涉及到对用户密码的加密于解密的算法,其中使用MD5加密是最常见的的实现方式.本文总结了通用的算法并结合了自己的一点小经验,分享给大家. 一.使用16位.32位.64位MD5方法对用户名加密 1 ...

  3. tomcat安全配置之证书密码加密存储

    最近项目组要完成一个新Web Servicer接口的开发,其中有项要求是支持外部客户程序以https方式访问这些SOAP接口.项目组当前基于tomcat6.0.29开发,axis版本为1.4.拿到这个 ...

  4. Flask 构建微电影视频网站(一)

    Flask构建电影视频网站 Python MTV模型 Flask微内核 Flask扩展插件配置及使用方法 根据业务开发网站前后台功能 Flask结合MySQL数据库 你将可以独立开发网站 独立部署运维 ...

  5. 和菜鸟们一起攻克金盾2018SS加密视频

    今天刚拿到金盾2018SS加密的视频,界面如下:<ignore_js_op> 机器码由源来的“00000-00000-00000-00000”变成了一串32位的字符串了:<ignor ...

  6. Python flask 构建微电影视频网站☝☝☝

    Python flask 构建微电影视频网站☝☝☝ 1.安装数据库连接依赖包 pip install flask-sqlalchemy 2.创建movie数据库 在CentOS虚拟机,进入MaridD ...

  7. Python flask 构建微电影视频网站✍✍✍

    Python flask 构建微电影视频网站  整个课程都看完了,这个课程的分享可以往下看,下面有链接,之前做java开发也做了一些年头,也分享下自己看这个视频的感受,单论单个知识点课程本身没问题,大 ...

  8. 基于Flask框架搭建视频网站的学习日志(三)之原始web表单

    基于Flask框架搭建视频网站的学习日志(三)1.原始Web 表单 本节主要用于体验一下前端后端直接数据的交互,样例不是太完善,下一节会加入Flash处理,稍微完善一下页面 (备注:建议先阅读廖雪峰老 ...

  9. 13flask密码加密

    一,了解密码加密方式 密码具有私有性较强的特性,预测密码加密对个人隐私的保护有这非常大的作用.在用flask搭建网站时候若服务器有被攻破的风险,要是用户表中密码字段也被拿走,后果将不堪设想. 在密码保 ...

随机推荐

  1. 微软要冷落windows是天方夜谭还是势在必行

    自从90年代开始,微软就统治着PC桌面市场,真正意义上地改变了世界,在很长一段时间内,Windows就和阳光.空气.水.电能一样,成为生活必需品,无处不在,又让人感觉不到其存在,正因如此,微软的市值于 ...

  2. perf4j+logback配置 非spring 可使用注解

    最近项目打算使用perf4j进行性能监控,由于项目没有使用spring,而又不想对代码入侵过高,打算使用注解的方式进行接入.perf4j采用AspectJ库实现AOP. 具体接入方法如下: logba ...

  3. 虚拟机apache启动

    /usr/local/apache2/bin/apachectl restart 重启 当启动也行 尝试过进入目录运行,比较奇怪,www目录竟然不一致,直接使用 server httpd start ...

  4. Ajax如何提交数据到springMVC后台

    现在好多web项目实现前段和后端分离,实现前端和后端技术人员,使他们加快开发,减少沟通上的问题,后台只需要提供访问接口,而前天只需要调用提供的接口即可.减少前后端的沟通上的成本 本项目是开发中发现aj ...

  5. PHP--foreach的问题

    <?php echo "<pre>"; $data = ['a', 'b', 'c']; foreach($data as $key => $val){ $ ...

  6. Java的同步和异步

    同步:发送一个请求,等待返回,然后再发送下一个请求 异步:发送一个请求,不等待返回,随时可以再发送下一个请求 同步可以避免出现死锁,读脏数据的发生,一般共享某一资源的时候用,如果每个人都有修改权限,同 ...

  7. unittest(12)- 学习读取配置文件

    1.配置文件格式 2.读取配置文件 import configparser """ 通过读取配置文件,来执行相应的测试用例 配置文件分为2个部分 第一部分:[SECTIO ...

  8. lvs/dr+keepalived搭建成功后,开启防火墙,虚拟IP不能访问,但是真实IP却可以访问

    lvs/dr+keepalived搭建成功后,开启防火墙,虚拟IP不能访问,但是真实IP却可以访问,如果关闭防火墙虚拟IP就可以访问网站了,这个问题肯定是防火墙在作怪. 经过这两的不懈奋斗和大家的帮助 ...

  9. LoraLU

    一.定义动画过程中形成的状态用transform transform 分为2D 和 3D,主要包含以下几种变换:旋转rotate.扭曲skew.缩放scale和移动 translate以及矩阵变形ma ...

  10. WiFi产生电磁辐射或让人想去自杀

    随着互联网在生活中的地位越来越重要,WiFi作为一种无线连接方式给了用户极大的便捷,然而有一部分科学家提出WiFi产生的电磁反应会对人的健康受到影响.面对这种说法,我们一直以为是专家在危言耸听,但是如 ...