php 防止用户更改url地址的参数

php 防止用户更改url地址的参数

温柔少女心 发布于 2021-11-27 字数 293 浏览 866 回复 15

@xtgss007 你好,想跟你请教个问题:localhost/index.php/Game/gamelist/id/300 如果用户恶意修改参数,这个时候想弹出提醒框,或者怎么加权限判断一下?如果加权限判断的话,怎么知道url地址被改过?谢谢您

如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

扫码加入群聊

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(15

奢华的一滴泪 2021-12-01 15 楼

你不用去checkURL,你要做的是再一次去查这个用户所能看到的列表数据,看用户传过来的这个id是否存在于这个用户所能看到的列表中(比较id),如果存在 ,则是正常的,否则弹出无权限即可

草莓味的萝莉 2021-12-01 14 楼

回复
我刚才试了一下,可以实现,谢谢你

酒几许 2021-12-01 13 楼

我用的tp,我在后台数据都加上了权限,但是主管让做出一个提醒框。我在函数里复制了这段代码(网上搜的),在控制器里调用 就会弹出一个提醒框,这样可以吗?有什么弊端吗?谢谢你!

只为守护你 2021-12-01 12 楼

有两种解决方法:

1、 写一个可逆的加密解密方法,在生成localhost/index.php/Game/gamelist/id/加密id,然后在服务端取到id时,再根据密钥进行解密。如果解密不了或不符合,则抛出异常

2、在取到id=300的时候,取数据前再一次 获取 这个用户可访问的数据的所有的id,如果当前id存在于列表id中,则返回数据,否则抛出异常

回忆凄美了谁 2021-12-01 11 楼

这都防止?

英雄似剑 2021-12-01 10 楼

id是300,是根据用户id查出来的,在后台数据都是根据用户id查出来的,都限制了,用户更改url参数的时候,会显示空数据,主管说这样不好,要弹出提醒,刚在网上有找到的方法,可以实现功能,不知道会有没有弊端呢!

各自安好 2021-12-01 9 楼

谢谢你哦!

千笙结 2021-12-01 8 楼

后端取到参数验证数据和权限即可。

终止放荡 2021-12-01 7 楼

后台有加的权限,但是主管让做出当修改url地址的时候,弹出一个提醒,没办法,主管要求啥,就得做啥,刚毕业,好多东西都不会,在慢慢学

永不分离 2021-12-01 6 楼

谢谢你呢

屌丝范 2021-12-01 5 楼

你判断这个ID这个人能不能访问就可以拉

落墨 2021-12-01 4 楼

你好,将id值加密,你说的服务器验证是指后台接收值的时候验证是吗?我有一个疑问:后台接收值的时候再解密,用户更改了数据之后,加不加密不都一样了吗?我不大懂服务器验证是什么,您能再给我说一下吗?谢谢你!

泛滥成性 2021-12-01 3 楼

回复
你的服务端有一个密钥,加密的时候用这个密钥,用户再一次给你把加密后id传过来的时候再用这个密钥去解密,这个密钥用户又不知道。所以篡改数据后正确性的几率很小

野心澎湃 2021-12-01 2 楼

回复
嗯呢,明白了,谢谢你!

韬韬不绝 2021-11-30 1 楼

这个是无法避免的,你通过明文传递ID就是这样,你将id值做简单的加密,不那么容易破解,当用户修改过后通不过你服务器的验证,你就可以返回错误内容了!