为了账号安全,请及时绑定邮箱和手机立即绑定

把主键暴露在URL中是好的选择吗?

把主键暴露在URL中是好的选择吗?

慕丝7291255 2018-10-05 17:26:40

Django为每个表自动生成了id字段,但这个问题跟Django联系不大。

假设有一个Article表,包含主键,那么我在url访问时直接使用该表的主键id,从安全性和性能方面考虑,这样好吗?比如说,Article表中有一条记录,id10051,而网址http://example.com/article/10051来显示该文章。

这样做能方便用户访问,因为知道某个文章的id,可以猜测其他文章的id来访问不同文章,但是直接把主键暴露在url中,会不会让黑客很容易能猜到数据库的结构从而引起安全方面的问题。

这样的应用场景,有没有什么要注意的或者一般方案呢?


查看完整描述

2 回答

?
一只斗牛犬

TA贡献1304条经验 获得超2个赞

太少的信息也不会引起猜测表结构

查看完整回答
反对 回复 2018-10-14
?
DIEA

TA贡献1319条经验 获得超2个赞

并没有什么不妥的地方。但是要考虑场景。比如电商系统中,如果查看订单号,把自增主键暴漏了,那无疑是暴露了平台的销售情况,给竞争对手来说无疑是绝好的资料。但是至于安全方面却没有什么值得注意的地方,无非还是防止注入什么的。再比如多用户博客系统,暴漏id那就无疑暴漏了平台的总注册用户数、总文章数、总发帖、评论回复数等。同样也对安全没有什么影响。

查看完整回答
反对 回复 2018-10-14

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信