Назад | Перейти на главную страницу

Проверка подлинности Windows IIS, кроме локального компьютера

У меня есть сайт PHP (веб-сайт по умолчанию) и сайт ASP.NET (приложение на веб-сайте по умолчанию), работающие вместе.

Я настроил проверку подлинности Windows для веб-сайта по умолчанию, и все в порядке. Проблема в том, что мое приложение ASP.NET создает веб-запрос - (HttpWebRequest)WebRequest.Create(url) - для получения информации из приложения PHP. Это нормально без аутентификации, но с аутентификацией Windows он получает ответ (401) Unauthorized.

Я понял, что могу передать учетные данные с помощью request.Credentials = new NetworkCredentials(user, pwd, domain); но я действительно ищу способ, чтобы приложение PHP разрешило другому приложению на том же сервере (даже на сайте).

Как я могу указать веб-сайту по умолчанию разрешить эти запросы?

Я не думаю, что вы можете обойти аутентификацию IIS. Ведь это то, для чего он нужен :)

Что вы можете сделать, так это настроить веб-сайт PHP дважды, один раз с участием аутентификация и один раз без.

На сайте без аутентификации, убедитесь, что вы установили ограничения IP, чтобы разрешить только localhost Запросы

Просто удалите Проверка подлинности Windows из Веб-сайт по умолчаниюи установите его в своем приложении на веб-сайте по умолчанию.

Это, конечно, предполагает, что вам не нужна аутентификация на веб-сайте по умолчанию (PHP).

Создайте дубликат (называемый, например, x_internal.php) страницы php (или страниц), к которой вы хотите получить доступ из приложения .net, и (только на этих страницах) настройте их на разрешение анонимного доступа и используйте фильтрацию IP для ограничения доступа к локальный IP только для предотвращения прямого доступа нелокальных клиентов.

Раньше я делал подобные вещи без проблем.

Это очень похоже на проблему, вызванную закрытием Microsoft уязвимости системы безопасности.

Если это та же проблема, что я видел, http://support.microsoft.com/kb/896861 даст вам достаточно деталей, чтобы разобраться. В моем случае это был просто вопрос редактирования реестра.