登录/注册系统与php和mysql
我想使用
PHP和mysql做一个简单的用户登录/注册系统.我不需要获取超出用户登录和登出所需的信息.我想确保系统安全.
我现在明白如何运作的方式是: 注册 用户输入他们的电子邮件地址,密码和确认密码. PHP脚本确保密码匹配,并且电子邮件是有效的地址,并且不在数据库中. 它将密码和随机盐一起散列,并将盐和结果散列的密码存储在数据库中. (是php的md5功能适合这个吗?我不太清楚这个部分如何工作.) 在数据库中存储电子邮件确认码,并将给定的电子邮件地址发送回包含该代码的网站以进行验证? 登录 用户输入其电子邮件地址和密码. 服务器在数据库中查找电子邮件并检索盐.然后用用户刚刚提供的密码对盐进行散列,看看它是否与数据库中的密码相匹配. 登录后如何使会话持续.用PHP会话?一个cookie?应该存储在cookie中以记住访问之间的用户? 我基本上只是想一些验证,我描述的过程是一个准确和安全的方式进行用户注册/登录.另外,有些更好的教程有更多的信息.
MD5不再被认为是安全的;考虑使用具有可变计算复杂度的bcrypt算法使用PHP的较新内置密码散列:PHP
理想情况下,您将使用PHP会话在单次访问期间维护状态,如果您想要“记住我的登录”选项,则可以使用包含足够信息的cookie来验证返回的用户并重新启动新会话.有关2004年关于登录Cookie的最佳做法的好文章:Persistent Login Cookie Best Practice.您可能也会对securely implementing “remember me” checkboxes的更现代化(2015)解决方案感兴趣. 除了这些,我认为任何你所描述的是好的. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |