我已经阅读了一些关于哈希用户ID(数据库主键)并保守秘密的事情,但我真的不明白为什么。
我正在创建一个REST API,您可以使用该API从特定用户检索资源。根据登录用户的不同,他/她将获得公共资源,如果获得授权,他们将获得私人资源。
做这样的事情是不好的:
.../resources?user_id=17
由于
答案 0 :(得分:2)
如果您设置了正确的权限并禁止其他用户滥用该ID,则无论该ID是公共还是私有都无关紧要。
您当然可以使用单独的ID公开代表用户,并使用私人ID进行授权。
答案 1 :(得分:1)
嗯,用户必须通过某些 ID来识别。即使您公开的公开ID是实际ID或其他随机数的哈希版本,那么 将是其公共ID。它根本不能帮助你。
只有一个随机化id的参数:如果你不希望人们通过增加一个计数器来简单地刮掉你的内容。对id进行随机化使得这样做有点困难。除此之外:问问自己有什么人可以做知道id 。希望没有,因为您的应用程序是安全的。