Я слышал, что раскрытие идентификаторов баз данных (например, в URL-адресах) представляет собой угрозу безопасности, но мне трудно понять, почему.
Любые мнения или ссылки о том, почему это риск или почему это не так?
EDIT: конечно, доступ ограничен, например, если вы не видите ресурс, foo?id=123
вы получите страницу с ошибкой. В противном случае сам URL должен быть секретным.
РЕДАКТИРОВАТЬ: если URL-адрес является секретным, он, вероятно, будет содержать сгенерированный токен с ограниченным сроком службы, например, действительный в течение 1 часа и может использоваться только один раз.
РЕДАКТИРОВАТЬ (несколько месяцев спустя): моя текущая предпочтительная практика для этого - использовать UUIDS для идентификаторов и раскрывать их. Если я использую последовательные числа (обычно для производительности на некоторых БД) в качестве идентификаторов, мне нравится генерировать токен UUID для каждой записи в качестве альтернативного ключа и раскрывать его.