Проблема проверки подлинности HTTP-запроса IIS - PullRequest
1 голос
/ 13 сентября 2009

Я использую VSTS 2008 + C # + .Net 3.5 + IIS 7.0 + ASP.Net. У меня есть два веб-сайта IIS, сайт A и сайт B. Когда пользовательский URL-адрес http://sitea/abc.aspx, мой обработчик кода ASP.Net будет аутентифицировать пользователя (используя проверку подлинности с помощью форм), а если аутентификация пройдена, я перенаправлю пользователя на * 1003. *http://siteb/bcd.aspx.

Моя текущая проблема в том, что некоторые пользователи будут обращаться к http://siteb/bcd.aspx напрямую, чтобы пропустить процесс аутентификации sitea. Это не то, что я хочу, так как я хочу, чтобы все пользователи, которые имеют доступ к http://siteb/bcd.aspx, прошли проверку подлинности.

У меня такой вопрос: каково простое решение проблемы, когда пользователь получит прямой доступ к siteb, чтобы пропустить аутентификацию?

Ответы [ 2 ]

1 голос
/ 13 сентября 2009

На siteb вы можете ограничить доступ к IP-адресу sitea.

В диспетчере IIS

Перейдите на вкладку «Безопасность каталога» или «Безопасность файла», а затем выполните одно из следующих действий:

в разделе «Ограничения IP-адресов и имен доменов» нажмите «Изменить».

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

Нажмите Добавить, а затем нажмите Один компьютер.

Нажмите DNS Lookup для поиска компьютеров или доменов по имени, а не по IP-адресу.

Введите DNS-имя компьютера. IIS выполняет поиск компьютера в текущем домене и, если он найден, вводит его IP-адрес в поле IP-адреса.

1 голос
/ 13 сентября 2009

Мои мысли об этом ...

  • Запретить анонимный доступ к сайту
  • Поскольку вы используете аутентификацию с помощью форм, установите логин надлежащим образом.
  • Если пользователь имеет прямой доступ к http://sitseb/bcd.aspx, поскольку анонимный доступ запрещен, он будет перенаправлен на соответствующий URL-адрес для входа.

Дайте мне знать, если вам нужны дальнейшие разъяснения.

Аналогичное решение представлено здесь ..

Аутентификация нескольких сайтов с помощью asp.net

ПРИМЕЧАНИЕ. Если это необходимо, домен cookie для проверки подлинности форм должен быть установлен на «* .yourdomain.com», чтобы один и тот же файл cookie мог использоваться для обоих сайтов.

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