使用 Flask-Restful 和 SqlAlchemy(使用 MySql)实现登录的最佳模式是什么?

What the best mode to implement login using Flask-Restful and SqlAlchemy (with MySql)?

拜托,

使用 Flask-Restful 和 SqlAlchemy(使用 MySql)实现登录的最佳模式是什么?

我正在使用它,我需要创建一个登录页面(使用 HTML + JS)。使用 Flask 捕获登录信息并发送到我的 REST 的最佳模式是什么?以及在数据库中加密密码和保存(和读取)的最佳模式是什么?

我在其他技术中做到了,但在 Flask 中没有做到。

谢谢!

意识到如果密码实施不安全,用户就会面临风险。

使用 HTTPS 将密码发送到服务器,最好在 POST 中,而不是在服务器可能记录的查询字符串中。

在服务器上将密码保存为密码验证程序。仅使用哈希函数是不够的,仅添加盐对提高安全性也无济于事。取而代之的是用随机盐迭代 HMAC 大约 100 毫秒,并用哈希值保存盐。最好使用 PBKDF2Rfc2898DeriveBytespassword_hashBcryptpasslib.hash 等函数或类似函数。关键是让攻击者花费大量时间通过暴力查找密码。

请参考此博客restful-authentication-with-flask by miguelgrinberg