Ответ 1
Я подозреваю, что отсутствие ответа на этот вопрос в первую очередь является отражением того факта, что 1) проблемное пространство сильно нюансировано и 2) люди, которые его решили раньше, не хотят говорить о том, что они сделали. Я постараюсь поднять тренд.:)
Прагматично следующие переменные, как правило, доминируют в разговорах, которые я видел:
- Если у пользователя есть ссылка в руке и fwds это для друзей, это функция или ошибка?
- Если владелец контента хочет отменить доступ (то есть отозвать ссылку), как легко это сделать? Насколько часто это происходит?
- Должна ли связь тайм-аут? Если так, то как долго?
- Где "линия" в нашем комфорте здесь? Например, если это ссылка на документ, читается только достаточно хорошо? Должна ли она работать с чтением и записью? Есть ли предел нашему комфорту с учетом модели угрозы?
- Существует ли ограничение на количество раз, когда ссылка должна использоваться?
- Нам все равно, хороши ли ссылки, или у них может быть какая-то уродливая огромная капля в них?
- Какие существуют проблемы, связанные с управлением версиями ссылок, внутренними службами и вещами, которые могут вызвать нарушения?
- Если базовое содержимое перемещается/ссылки меняются, должны ли рассылаться личные ссылки, которые были отправлены? В более общем плане, какие виды операций должны разорвать ссылки и какое влияние на пользовательский опыт должно иметь?
- Предполагая, что высококвалифицированный злоумышленник находится после ваших ссылок, какие существуют другие защиты, чтобы предотвратить угадывание пространства, и какая у вас история инструментов? Затем вы накладываете это на математику в самих ссылках и убеждаете себя, что у вас есть модель угрозы, где требуется угадать сингулярную ссылку, и с такой моделью затрат, что это дорого стоит.
Что касается реализаций, я не знаю документов или готовых реализаций, которые это делают. Каждый, кого я был частью (к сожалению, я был частью более чем одного...), был обычным явлением. Я мог бы предложить единый набор компромиссов и прокомментировать их здесь, но я не уверен, что это будет полезно. Все будут отвечать на вопросы выше по-разному.
Я с удовольствием комментирую ваш конкретный сценарий с большим количеством данных...