Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
flask security不会散列新创建的密码,而是在首次登录时更新散列的密码_Flask_Flask Security - Fatal编程技术网

flask security不会散列新创建的密码,而是在首次登录时更新散列的密码

flask security不会散列新创建的密码,而是在首次登录时更新散列的密码,flask,flask-security,Flask,Flask Security,我是个新手。我已经设置了app.config[“SECURITY\u PASSWORD\u SALT”]=“something”。每次我创建用户 user_datastore.create_user( email=username, password=password, roles=["level 1"]) db_session.commit() 创建很好,但是数据库中这个新用户的密码没有散列。但是,当我通过登

我是个新手。我已经设置了app.config[“SECURITY\u PASSWORD\u SALT”]=“something”。每次我创建用户

    user_datastore.create_user(
        email=username,
        password=password,
        roles=["level 1"])
    db_session.commit()
创建很好,但是数据库中这个新用户的密码没有散列。但是,当我通过登录视图登录时,数据库中的密码会更新哈希值

  • 为什么登录过程会更新密码
  • 我是否在第一次对密码进行哈希运算时丢失了一些设置

  • 正如文档中所述(在3.4.x中),当使用create_user时,它会存储您传递给它的任何内容!这被认为是一件非常糟糕的事情——您必须对其进行散列(API文档中为create_user提供的示例)

    默认情况下-配置变量:SECURITY\u DEPRECATED\u PASSWORD\u SCHEMES定义了视图为“坏”的方案,如果遇到,将在登录时自动重新散列。这允许在认为旧的加密不充分时缓慢更新用户数据库