Как обезопасить статическую ссылку HTML - PullRequest
0 голосов
/ 11 августа 2009

Компания, в которой я работаю, хочет предоставить нашим клиентам возможность предоставлять ссылки на наш сайт, чтобы их клиенты могли планировать оплату через них.

Мы хотим, чтобы решение было максимально простым и простым в использовании. Наши клиенты вряд ли смогут программировать наши сценарии на их стороне, поэтому мы хотим просто предоставить им ссылку, которую они могут использовать, чтобы надежно определить, кто из наших клиентов отправил этого человека на наш сайт.

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

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

Это предотвращает утечку данных (насколько мы можем судить), но никак не мешает кому-либо копировать ссылку и использовать ее где угодно (но на самом деле мы хотим, чтобы наши клиенты могли просто прикрепить ее куда угодно и просто работать) ).

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

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

1 Ответ

1 голос
/ 11 августа 2009

Это то, что я бы сделал,

  1. Подпишите ссылку секретом, чтобы никто другой не мог составить случайную ссылку.
  2. Добавьте параметр для идентификации сайта партнера.
  3. Настроен список разрешенных реферером для сайта.
  4. Получив запрос, проверьте подпись и установите рефери в действие.

Это не очень безопасно, но соответствует большинству ваших требований.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...