PHP应用程序在多个表中保存用户数据、密码和登录信息是否更好?

PHP应用程序在多个表中保存用户数据、密码和登录信息是否更好?,php,mysql,security,Php,Mysql,Security,我有一个php和Mysql的应用程序。为了安全起见,最好将用户的数据保存在不同的表中?或者如果我把所有数据都保存在同一个表中就没有问题了?第一种方法,使某些对象中的用户信息在内存中不完整。这在php中更安全吗?可以使用一个表。不要将密码存储在数据库中,只将其作为哈希值,以便将来进行比较。将后端与UI分开。转义所有用户输入。问题不在于将数据存储在一个表中。这是关于整个数据库的保护有多强。是的,这可以作为一种安全方法 您可以有一个存储用户名和bcrypt密码散列的表,身份验证使用的数据库帐户仅限于此

我有一个php和Mysql的应用程序。为了安全起见,最好将用户的数据保存在不同的表中?或者如果我把所有数据都保存在同一个表中就没有问题了?第一种方法,使某些对象中的用户信息在内存中不完整。这在php中更安全吗?

可以使用一个表。不要将密码存储在数据库中,只将其作为哈希值,以便将来进行比较。

将后端与UI分开。转义所有用户输入。问题不在于将数据存储在一个表中。这是关于整个数据库的保护有多强。

是的,这可以作为一种安全方法

您可以有一个存储用户名和bcrypt密码散列的表,身份验证使用的数据库帐户仅限于此表

另一种方法是,让进行身份验证的页面可以访问另一个数据库,然后对身份验证后连接使用的站点的其余部分使用另一个数据库

如果存在SQL注入等漏洞,这将限制从系统中提取任何数据。当然,最好首先集中精力保护您的系统免受现有漏洞的攻击,然后作为系统强化练习的一部分在单独的数据库中进行设计。如果将来存在允许注入查询的mysql漏洞,则数据库分离将有助于您。在发现这些漏洞之前,您永远不会知道它们是否存在