我听说暴露数据库ID(例如在URL中)存在安全风险,但我无法理解原因。
关于为何存在风险或为何不存在风险的任何意见或联系?
编辑:当然访问是作用域的,例如,如果你看不到资源,foo?id=123
你会得到一个错误页面。否则URL本身应该是秘密的。
编辑:如果URL是秘密的,它可能包含生成有限的生成令牌,例如有效1小时,只能使用一次。
编辑(几个月后):我目前的首选做法是使用UUIDS作为ID并公开它们。如果我使用序列号(通常用于某些DB上的性能)作为ID,我喜欢为每个条目生成一个UUID令牌作为备用键,并公开它。
慕哥6287543