2009-03-11 2 views
0

Что считается наилучшей практикой для создания URL-адреса, который является общедоступным, но доступным через боковой канал, так что он практически личный для группы, использующей его?Какова наилучшая практика для «частных» общедоступных URL-адресов?

Что-то вроде:

http://example.com/club/XX-XX-XX-XX
http://example.com/club/YY-YY-YY-YY

Где XX-XX-XX-XX совместно одной группы, и YY-YY-YY-YY делится другой группой. Если у вас есть один действительный код, не следует легко угадывать другие действующие коды.

Для URL-адреса не требуется никакой другой защиты.

+0

Случайное число кажется хорошим кандидатом, но насколько оно велико? –

ответ

3

GUID s всегда хороший выбор для уникальных идентификаторов и очень легко генерировать (но выглядеть некрасиво)

+0

Указатель содержит 128 бит информации. Если мы предположим, что веб-сервер может обрабатывать 10K запросов/секунду, угадателю потребуется более 1x10^27 лет, чтобы попробовать каждую возможность по очереди. Это кажется чрезмерным, поэтому мне кажется что-то короче GUID. –

0

Рассмотрите возможность использования Amazon S3, они имеют ограниченные по времени открытых URL.

0

Я бы рекомендовал создать UUID. Вы можете использовать Java java.util.UUID и URLEncode/Decode его текстовое представление, если ваш back-end находится на Java. Я уверен, что есть эквивалент в .NET, если вы используете ASP.NET.

0

Для создания пути URL-адреса используется некоторая форма хэша (SHA1 будет делать). Конечно, рандомизировано. chmod каталог, в котором файлы находятся до 711 (rwx--x--x)

0

Случайная последовательность буквенно-цифровых символов выполнит эту работу. Символы выбираются среди 26 строчных букв, 26 букв в верхнем регистре и 10 номеров, повторяющихся дюжину раз, в основном должны быть достаточными для ваших нужд.

0

Вы находитесь в компромиссе между сложностью и удобочитаемостью (или даже памятным). GUID предлагает уникальный код, который, как уже упоминалось, легко сгенерирован, но читаемость и запоминаемость низки. Случайные символьные строки, произвольно разделенные, могут также предложить решение. Наконец, английские слова, выбранные случайным образом, были бы легче запоминать и общаться и, вероятно, все же обеспечивали бы такой же уровень изоляции и защиты.

В конце концов, если только ваши пользователи не проявят особой тщательности и не будут деактивировать историю адресов и историю браузера, тогда URL-адрес будет доступен всем, чтобы узнать, кто впоследствии посетит машину.

Смежные вопросы