【发布时间】:2018-03-17 11:45:44
【问题描述】:
(一年前刚开始编码,我仍然对 StackOverflow 上的人有多酷感到敬畏 :))
无论如何,在我之前的工作中,我们在后端使用自定义 UUID 作为 userId,而不是自动生成的 mongo 对象 ID。
当时我认为它与通过 URL 路由公开这些内容时可能存在的安全问题有关。然而,我真的不知道这比暴露自定义 ID 更不安全。黑客可以假设我的数据库吗?
有人能说明这方面的最佳做法吗?
谢谢!
【问题讨论】:
(一年前刚开始编码,我仍然对 StackOverflow 上的人有多酷感到敬畏 :))
无论如何,在我之前的工作中,我们在后端使用自定义 UUID 作为 userId,而不是自动生成的 mongo 对象 ID。
当时我认为它与通过 URL 路由公开这些内容时可能存在的安全问题有关。然而,我真的不知道这比暴露自定义 ID 更不安全。黑客可以假设我的数据库吗?
有人能说明这方面的最佳做法吗?
谢谢!
【问题讨论】:
ObjectId 的安全性丝毫不低于 UUID。
它们确实带有时间戳部分,因此如果您公开对象 id,客户端可以知道此 id 的生成时间。但是:
【讨论】: