php - 使用密码短语进行 PHP 请求

标签 php

假设我有一个简单的 php 文件,它使用 JSON 字符串处理将数据上传到网络服务器的操作。

假设这是对/upload.php 的 POST 请求

网络服务器没有用户/任何类型的登录凭据。

为了防止任何人在偶然发现此网址时上传数据,在 php 代码中硬编码一个简单的密码短语检查是否是一种不好的做法?

想象一下在 json 字符串中包含 {“passcode”:”123abc”}

服务器确定此密码短语是否存在或正确。 如果不是,它就什么也不做。

伪代码就像这样。

If (json[“passcode”] == “123abc”)
{
    Upload
}
Else
{
    Throw404
}

每当有人想要上传时,都必须在文本框或类似内容中输入密码。

就像输入密码登录社交网络一样。

如果这是不好的做法,是否有另一种不需要用户和各种身份验证的替代方案?

最佳答案

对于像将数据上传到服务器这样敏感的事情,我的直觉是这是不行的 - 即使这打算由小公司中的 2-3 个人使用 - 它是“王国的 key ”如果只有一个人犯了错误,就会发生这样的事情。

您应该通过更多形式的保护来扩展脚本背后的安全性:

  • IP限制
  • 密码散列或加密/解密(切勿发送纯文本密码)
  • 为每个用户提供自己的用户名和密码

这不需要太多额外的工作,您可以在网上找到很多资源。

如果您要保护的是只读类型的页面,也许是销售列表或其他内容,那么您原来的解决方案可能没问题,但直接上传到您的服务器是非常危险的,应该尽可能受到保护。

关于php - 使用密码短语进行 PHP 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50652330/

相关文章:

php - 如何使选择列表的输出依赖于父列表?

php - 哪些超全局变量受 magic_quotes_gpc = 1 的影响?

php - 在 PHP 中删除 header

javascript - 如何使用 jQuery 将行追加到表中?

php - 哪个模板引擎对 PHP 性能有好处

php - Mysql:latin1->utf8。将字符转换为其多字节等价物

PHP计算年龄

javascript - 从文件夹中获取文件名

javascript - WooCommerce - 根据自定义字段添加费用

php - slim php框架图片上传放数据库