Ограничить доступ к веб-сайту на основе реферера, файлов cookie или чего-либо еще - PullRequest
2 голосов
/ 22 февраля 2010

У нас есть сценарий, при котором мы размещаем веб-сайт ASP.NET MVC от имени кого-то другого.

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

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

Если мы назовем наш размещенный сайт B и их веб-сайт портала A, как я вижу, мы могли бы:

  • Проверьте реферер на все запросы к B, если они не пришли от A, они не могут войти в
  • Проверить наличие определенного куки (при условии, что A использует куки)

Я уверен, что есть другие варианты, у кого-нибудь есть идеи?

Ответы [ 2 ]

4 голосов
/ 22 февраля 2010

Проверьте реферер на все запросы к B, если они не пришли от A, они не могут войти в

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

Проверить наличие определенного файла cookie (при условии, что A использует файлы cookie)

Попросите их встроить в свой портал часть кода с вашего сайта. Таким образом, посещение их портала приведет к настройке файла cookie для вашего домена. Тогда вы можете легко прочитать это позже.

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


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

2 голосов
/ 22 февраля 2010

Решения, которые вы опубликовали, не безопасны.

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

Список реализаций единого входа

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