将 PHP API 方法设为私有


Make PHP API methods private

我正在研究PHP中的用户身份验证库。现在我有状态和无状态的CSRF保护,一切都是安全的。我的问题是 API 适用于远程应用程序(移动应用程序、游戏等),并且具有面向公众的脚本,让客户端应用程序执行授权/登录用户的请求。我想在此 API 中包含用于创建和删除用户的功能,以便客户端可以自己完成所有操作,但无法找到一种方法来做到这一点,以便创建脚本不会被任何人击中以充斥数据库虚假用户。使用 API 创建用户时,我不需要请求中除用户名或密码以外的任何凭据,这意味着任何人都可以点击该脚本。有谁知道一个安全的解决方案来防止攻击者使用 API 自己创建/删除用户?

您可以通过

要求密钥来增加隐蔽性。在客户端代码中分发密钥。但是,访问客户端代码的任何人都可以看到密钥并使用它。但是,扫描服务的随机人员不会有客户端代码,也没有密钥。