Устранение неполадок при входе в систему через веб-службу IIS6 в Windows 2003 - PullRequest
1 голос
/ 26 ноября 2008

Окружающая среда:

win2003 под управлением IIS6, обслуживающий asp-страницы, вызывающие код delphi.

Код Delphi связывается с c # webservice , для которого требуется войти (login.asmx). Логи веб-службы показывают, что вход в систему выполнен успешно. Результаты отладки показывают, что Context.User.Identity.IsAuthenticated returns true.

После входа в систему код Delphi дважды проверяется, если он все еще аутентифицирован. Веб-сервис возвращает false -> Context.User.Identity.IsAuthenticated returns false.

Наше предположение: файл cookie для проверки подлинности, полученный с помощью кода delphi, работающего под IIS6 учетные данные (сетевая служба?), Не сохраняется на диск, поэтому вход в систему потерян.

Filemon показывает 'C:\WINDOWS\Temp\Temporary Internet Files' доступ запрещен. Предоставление IIS6 прав администратора для этой папки устраняет проблему, но не является приемлемым, поскольку файлы cookie должны работать по умолчанию.

Запуск IIS6 в IIS5 Режим совместимости устраняет проблему, но также не является предпочтительным

Требуемое решение: точная причина проблемы и наименьшее возможное изменение конфигурации (предоставление прав администратора для IUSR невозможно)

Ответы [ 2 ]

0 голосов
/ 26 августа 2011

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

Одно важное различие между IIS5 и IIS6 заключается в том, что Windows 2003 претерпела существенную блокировку безопасности с обновлением SP1 . Существует очень большое количество вещей, которые работали для Windows 2000 , которых просто не будет в 2003 (и не должно было бы - они открыли дверь для всех видов махинаций). Попытка отследить все места, где IIS6 заблокированный материал может быть сложной задачей, вместо этого я использовал бы вышеупомянутый ресурс, чтобы отследить общие проблемы, с которыми сталкиваются люди с IIS6 .

0 голосов
/ 26 ноября 2008

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

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