Php 如何为会员登录站点创建“超级管理”密码
我们在LAMP stack上建立了一个网站,允许会员登录他们的个人资料。虽然我们有一个管理界面来处理大多数任务,但有时作为成员登录并查看他们看到的内容是“必要的” 我们为会员提供了一个非常安全和彻底的salt和验证登录过程,但我认为以下声明并不太安全:Php 如何为会员登录站点创建“超级管理”密码,php,mysql,login,salt,Php,Mysql,Login,Salt,我们在LAMP stack上建立了一个网站,允许会员登录他们的个人资料。虽然我们有一个管理界面来处理大多数任务,但有时作为成员登录并查看他们看到的内容是“必要的” 我们为会员提供了一个非常安全和彻底的salt和验证登录过程,但我认为以下声明并不太安全: sql = SELECT * FROM userlogins WHERE username = :user (run the users entered password through the salt process) $userpassw
sql = SELECT * FROM userlogins WHERE username = :user
(run the users entered password through the salt process)
$userpasswordentered = undisclosed salt process of ($_POST['password']);
if($userpasswordentered == value retrieved from userlogins above OR $_POST['password'] == 'hardcodedpw') {
log user in
}
有没有一种真正“安全”的方法来创建一个“超级”密码,允许我在给定有效用户名的情况下登录任何用户帐户?我将实现某种用户模拟功能。因此,基本上,从您的管理员帐户,您可以输入/搜索用户ID,然后调用登录用户代码,就像该用户已登录一样。这将注销管理员用户,但他们现在将根据请求模拟客户 但就我个人而言,如果我有一个用户/编辑操作,那么代码会执行以下操作:
//check for an admin user
if ($current_user->role == 'admin')
//admins have to specify customers to edit
if (isset($_GET['id']))
$user_id = $_GET['id'];
else
//if no customer is specified, return a 404
http_404();
else
//customers can only see their own details
$user_id = $current_user->id;
//get the user details to edit
$user_to_edit = $repository->get_user($user_id);
这样,管理员用户就可以保持登录状态,并且您可以控制管理员用户可以处理多少客户的东西。我将实现某种用户模拟功能。因此,基本上,从您的管理员帐户,您可以输入/搜索用户ID,然后调用登录用户代码,就像该用户已登录一样。这将注销管理员用户,但他们现在将根据请求模拟客户 但就我个人而言,如果我有一个用户/编辑操作,那么代码会执行以下操作:
//check for an admin user
if ($current_user->role == 'admin')
//admins have to specify customers to edit
if (isset($_GET['id']))
$user_id = $_GET['id'];
else
//if no customer is specified, return a 404
http_404();
else
//customers can only see their own details
$user_id = $current_user->id;
//get the user details to edit
$user_to_edit = $repository->get_user($user_id);
这样,管理员用户就可以保持登录状态,并且您可以控制管理员用户可以处理多少客户的东西。Harcoded/后门密码从来都不是一个好主意。永远都不会。同意马克的观点。只需给数据库中的每个帐户一个访问级别。超级用户帐户将具有允许这种访问类型的访问级别。只要确保你没有违反你自己的隐私政策。加密/后门密码从来都不是一个好主意。永远都不会。同意马克的观点。只需给数据库中的每个帐户一个访问级别。超级用户帐户将具有允许这种访问类型的访问级别。只要确保你没有违反你自己的隐私政策。