如何保护传递给另一个页面的查询字符串或参数

时间:2015-02-06 06:00:52

标签: php laravel-4 laravel-routing

我有一个以表格格式显示产品列表的方案,其中一个列有一个指向产品页面的链接。

<td> <a href="/ViewProduct/{{$request->prd_ID}}/{{$request->usr_ID}}" id="link" > Product </a> </td>

路线如下:

Route::get('ViewProduct/{pid?}/{uid?}', 'ViewProductController@Page_Load');

,网址为:

http://example.com/ViewProduct/11/4

此方法直接公开产品ID和用户ID,并且可以在浏览器中轻松修改。关于如何在php / laravel中解决这些问题的任何输入?

1 个答案:

答案 0 :(得分:1)

这不是你应该担心的事情,而是毫无意义的浪费时间。有人将网址从2更改为3,他们会看到不同的网页... 那么是什么?!如果他们被允许首先看到该页面,即如果他们可以在您的网站上点击并最终发现此页面,那么问题是什么?他们只是采取了捷径。如果他们 不允许看到该页面...好吧,当有人请求该页面时,您正在进行授权检查,不是吗?如果你是,那就没有问题了。如果你不是,那么那是你真正的问题。试图保持URL&#34; secret&#34;和&#34; unguessable&#34;是不可能的,只需进行适当的授权检查。