the*_*cus 1 php mysql security
我的一些页面是使用$ _Get从MySQL中提取的结果生成的.这意味着网址会像这样结束/park.php?park_id=1.这是一个安全问题,是否最好从URL隐藏查询字符串?如果是这样我该如何去做呢?
此外,我在某处读过Google没有使用a索引网址?,这将是一个问题,因为这些是我网站的主要页面.这有什么道理吗?
谢谢
如果这是敏感信息,那只是一个安全问题.例如,您将用户发送到此URL:
/park.php?park_id=1
Run Code Online (Sandbox Code Playgroud)
现在,用户知道当前正在查看的公园在数据库中具有系统标识符"1".如果用户然后手动请求该怎么办?:
/park.php?park_id=2
Run Code Online (Sandbox Code Playgroud)
他们是否危及您的安全?如果他们不被允许查看公园ID 2,那么此请求应该适当地失败.但问题是它们碰巧知道 ID为1或2吗?
在任何一种情况下,所有用户正在做的是发出请求.服务器端代码负责适当地处理该请求.如果不允许用户查看该数据,则拒绝该请求.不要试图阻止用户发出请求,因为他们总能找到办法.(他们可以手动输入.即使没有首先访问过您的网站.)安全性是在响应请求时发生的,而不是在制作时.
他们不允许知道一些数据.但ID可能不是那个数据.(或者至少不应该,因为数字ID很容易猜到.)