加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 使用Mongodb ObjectID作为文档ID?

发布时间:2020-12-13 13:06:43 所属栏目:PHP教程 来源:网络整理
导读:我正在尝试用mongoDB制作一个电路板. 我想用ObjectID分配文档ID. 如果用户可以在http://www.example.com/4easdf123123之前访问文档页面,其中“4easdf123123”是mongoDB ObjectID. 是否存在任何可能的安全威胁,如果我在URL中使用并显示mongo ObjectID并将其用
我正在尝试用mongoDB制作一个电路板.

我想用ObjectID分配文档ID.

如果用户可以在http://www.example.com/4easdf123123之前访问文档页面,其中“4easdf123123”是mongoDB ObjectID.

是否存在任何可能的安全威胁,如果我在URL中使用并显示mongo ObjectID并将其用作文档ID?

以及使用mongoDB分配文档ID的任何建议?

这看起来不像MongoDB ObjectID – ObjectID是12字节的二进制数据,当呈现为十六进制字符串(在URL中使用它的常用方法)时,它将是24个字符长.我假设您正在使用 official PHP Mongo Driver,在这种情况下,MongoId类的构造函数将忽略无效值并为您生成一个新值.无论如何,最好让驱动程序为您生成ObjectID / MongoId,因为它会以避免冲突的方式生成.

至于在您的网址中使用它的安全性,您应该没问题.当然,您应该使用有关实现代码的常规预防措施,以确保当前用户有权查看正在显示的对象等,但在URL中使用ObjectID的安全风险不会超过任何其他数据库标识符(字符串)因为ObjectID没有语义值(而URL中的“adminuser”之类的字符串可能会传达该URL与具有提升权限的用户相关),因此通常会有更少的内容.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读