我正在构建一个需要用户身份验证和授权的站点.我最初的想法是使用Flask框架编写应用程序.但是,我了解到Flask没有内置的身份验证系统.它确实有一个扩展名瓶登录,但我还没有得到任何关于这个扩展是否写得很好的确认.我已经读过很容易让身份验证错误.
切换到像Django或web2py这样的内置身份验证系统可能是个好主意吗?
优秀的网络程序员通常选择使用经过验证的真实身份验证系统,而不是尝试推出自己的身份验证系统吗?
是否有一个很好的指南,展示了建立身份验证/授权系统的最佳实践?
多谢你们!
如果要向网站添加用户登录功能(即身份验证和授权),请使用现有框架.除非您是安全方面的专家,否则编写安全系统的概率接近于0.无论您编写的语言是什么,无论您使用何种框架,这都适用.
不幸的是,我看到人们回答这个问题如下:"作为一个初学者,这不是那么难,也很有趣.你需要一个存储数据的地方(比如一个mysql数据库).你应该存储ENCRYPTED版本的密码等." 这个答案是完全不正确的.
有免费的身份验证框架,可以使用它们.例如,Django和web2py都有内置的身份验证系统.许多框架没有内置身份验证(例如Flask,webpy); 这并不意味着你应该推出自己的框架.它只是意味着你应该找到第三方认证软件.对于Flask,有Flask-login.
所以,我原来问题的答案是:
1.)是,或集成经过验证的第三方软件系统.
2.)是的,最佳实践说不要写自己的认证系统.使用已经构建的一个.
3.)您不应该需要构建身份验证系统的指南,因为您不应该构建一个身份验证系统.但是,OWASP是一种很好的安全资源.
以下是一个简短的总结: 不要编写自己的身份验证系统.使用受信任的预构建身份验证系统.如果有人对可以与Python一起使用的身份验证系统有任何建议,请随时发布它们.
归档时间: |
|
查看次数: |
1149 次 |
最近记录: |