为什么要使用非顺序ID?

时间:2015-11-22 12:11:42

标签: web-applications

有些人建议在Web应用程序中为用户(以及其他用途)使用非顺序ID。这种方法有什么好处,什么时候应该使用?

2 个答案:

答案 0 :(得分:0)

如果您不想在应用程序中共享用户数或增长率,则非顺序ID非常有用。这在启动新服务时特别有用,并且您不希望您的用户知道用户仍然很少。

正如someone else所说:

  

每个网站都有第三个用户,但第三个用户不必知道他是第三个用户。

请务必注意,您应将此作为安全方法(即security through obscurity)。

答案 1 :(得分:0)

好处是非顺序ID很难猜测。如果它们在任何地方暴露,则可以使用顺序ID来确定有关您站点的信息。

例如,如果按用户ID访问每个注册用户的用户信息页面,则攻击者可以使用该页面计算您的用户数,并计算您的注册率。这可能是商业敏感数据。

使用像uuid这样的稀疏ID可以防止这种攻击,并且还会使某人更难以抓取用户列表。

不利的一面是你需要应对这样一个空间中的潜在碰撞,这会让你更难以统计你的用户。

何时应该使用它取决于您想要做什么,如果您希望人们能够迭代您的用户,或者按ID排序,那么使用顺序ID。如果你想阻止这种情况,那就使用非连续的,或者不要以外部可见的方式使用te。