我已经阅读了"how-to-secure-database-passwords-in-php",它建议将密码保存在应用程序的web根目录之外的配置文件中,但是如果我想控制站点的“管理员”和“只读”用户,我应该使用什么模式。当管理员登录时,我需要能够加载管理员配置密码文件,反之亦然。我想对两个用户使用相同的域模型。我是否应该为一个'Role‘对象建模,并让它来管理所使用的密码?或者有一个更简单的解决方案。另外,我应该创建两个单独的密码配置文件,还是将两个帐户详细信息捆绑到一个文件中?
致以敬意,
发布于 2009-04-01 09:08:38
好吧,这个问题没有唯一的“正确”答案。这取决于项目的复杂性和范围-但更重要的是,它取决于项目的更改性质。
如果您预计需要拥有管理员访问权限或只读访问权限的不同人员进行大量更改和添加,那么是的,您将需要使用您的模型层来存储和访问密码。如果您需要在应用程序的不同部分访问更细粒度的权限/权限,则角色对象可能会很有用。否则,在角色字段中使用单个布尔型isAdmin字段或整数/枚举可能是可以的。
在配置文件中让用户面对密码的唯一情况是,如果管理员很少访问,并且只有一两个人访问。否则,您希望将密码视为应用程序模型的完整部分。
发布于 2009-04-29 17:00:24
除数据库密码以外的所有密码都应存储在数据库中,并进行单向散列。这是最简单、最常见的方法,而且非常安全。是的,将db密码存储在web根目录上的配置文件中也是一个好主意。
https://stackoverflow.com/questions/704674
复制相似问题