2

我有一个保留用户名列表,我想在我有机会验证他们之前阻止新用户使用这些用户名。身份验证将通过在网站上放置一个密码来完成,然后我将检查该网站的密码并允许他们继续。我已经编写了验证代码的方法,但是......

第一:阅读functions_user.php 我不知道最后一次用户名检查是在哪里查看我的用户列表。我已经翻遍了整个文件,我什至看不到他们在哪里根据数据库验证用户名。(这比第二部分更重要)

第二:我需要在某处添加身份验证密钥(我可能只是将其写入一个平面文件,因为该列表只有大约 150 个名称) - 有人对此有什么建议吗?

更新

我想我可以忽略该方法user_add并在它到达之前进行检查 - 我会尝试一下。

实际上,在考虑了更多之后,我认为我需要已经使用密钥创建用户,如果有人尝试使用其中一个用户登录,我会给他们密钥进行身份验证并从那里开始......

4

1 回答 1

1

呃,这真的很混乱。

使用黑名单防止代码注入会浪费大量时间和计算费用。解决问题的正确方法是根据写入的介质对内容进行转义

如果您使用的是您并不真正信任的现成代码,请尝试类似...

function is_nasty($str)
{
   if (htmlentities($str)!==$str) {
       return true;
   }
   if (mysql_escape_string($str)!==$str) {
       return true;
   }
   // any more checks you want to run....
   return false;
}
于 2011-02-10T13:36:41.820 回答