1

我正在编写一个 phonegap 应用程序,我想发送 ajax 请求并使用一些参数注册用户,例如:full name、、、。emailpassword

构建我的 PHP 脚本以防止其他用户用注册请求淹没我的数据库的最安全方法是什么?

4

2 回答 2

1

有一些标准方法:

  • 验证码
  • 在表单中添加隐藏或不可见的字段,如果其中有任何数据,则不允许注册。Hidden 只会捕获愚蠢的机器人,因为它们通常可以分辨出它就是这样,但是如果你使用 CSS 和/或 Javascript 来做它,invisible 会更棘手。这个主题的变化也很好,例如有一个带有时间戳的字段,然后将它与现在进行比较(并否认它是否太旧/来自未来),或者以某种方式使用魔法值。
  • 向他们发送电子邮件,如果退回,则不允许注册。
  • 通过 . 检查推荐 URL $_SERVER['HTTP_REFERER']。如果您的注册页面不在您的主页上,请将其设置为必须来自您网站上的某个位置。
  • 使用非字典词作为元素标签。尽管这会使调试更加痛苦,但它可以防止机器人猜测在现场有效的数据类型。
于 2013-01-08T19:30:31.577 回答
0

其中一种方法是将 SECRET_KEY 嵌入到您的 Java 文件中,并在您使用注册表单进行 ajax 调用之前通过插件访问它。发送 SECRET_KEY 以及用户注册信息,以验证呼叫仅来自您的应用。忽略任何不包含 SECRET_KEY 的内容。

在 Java 文件中嵌入 SECRET_KEY 是一个建议,因为 .apk 文件可以很容易地“解压缩”以查看源代码(/www 文件夹)而不是 Java 文件。

“负载平衡”来处理对服务器 api 的大量请求将是一个不错的选择。如果您正在运行 IIS,应该有一些模块可以插入以有效利用传入的请求。

于 2013-01-08T19:16:54.640 回答