IIS7 / Win7 - убедитесь, что удостоверение пула приложений имеет доступ на чтение к физическому пути - PullRequest
7 голосов
/ 06 октября 2009

Я использую экземпляр localhost (поэтому домены не являются моей проблемой!) На моем ноутбуке с использованием Win7 и IIS7. Я получаю ошибки аутентификации на своем веб-сайте и в одном виртуальном каталоге.

default website - localhost:80  c:\mydirectory\localhost
virtual directory - c:\mydirectory\weborb30

Обратите внимание, что они не находятся в каталоге c: \ inetpub \ wwwroot!

Теперь я немного погуглил и обнаружил, что мне нужно добавить свое [machinename $] в ACL. (Надеюсь, я сказал это правильно.) Я сделал это, хотя это предметная вещь. Ничего не изменилось. Я также прочитал, что IIS7 теперь использует ApplicationPoolIdentity, и я попытался найти это на своей локальной машине - не повезло. Итак, я изменил пул приложений для запуска под другой встроенной учетной записью. Теперь я не только получаю ошибку аутентификации, но больше не могу AttachProcess для W3WP.

Как, черт возьми, вы СОБСТВЕННО настраиваете VS2005, IIS7 на WIN7-боксе для локального запуска ???

Ответы [ 3 ]

8 голосов
/ 29 ноября 2009

У меня была похожая проблема, и я решил ее, предоставив разрешения на чтение пользователю "IUSR" и группе "IIS_IUSRS".

Я не совсем уверен, почему это работает. Кажется странным необходимость давать разрешения IUSR, когда я думал, что он будет включен в группу IIS_IUSRS. Я думаю, что часть этого относится к учетной записи, под которой запускается пул приложений (например, «IIS AppPool \ Classic .NET AppPool» для классического пула приложений .NET в IIS 7.5 / Windows 7), но мне все еще неясно.

Этот вопрос StackOverflow, похоже, связан.

6 голосов
/ 22 октября 2009

Прежде чем вносить изменения в пулы приложений, все, что вам, вероятно, нужно было сделать, это добавить доступ для чтения к вашему физическому каталогу для учетной записи «сетевой службы» (это учетная запись по умолчанию, используемая asp.net в vista & win7).

Я думаю, что вы можете искать в этом месте:

aspnet_regiis -ga <useraccount> 

Ключ -ga указывает aspnet_regiis настроить всю безопасность для asp.net. Обычно вам нужно делать это только тогда, когда вы используете олицетворение в своем приложении, но если вы меняете пользователя по умолчанию для пулов приложений, то вы эффективно делаете то же самое в IIS.

Лучшая полная документация , которую я нашел, находится на MSDN . Он применяется к предыдущей версии IIS IIS 6, но его довольно легко применить в средах IIS 7

0 голосов
/ 25 февраля 2016

Просто попробуйте перезапустить IIS здесь: Расположение IIS, чтобы перезапустить и не использовать iisreset и т. Д.

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

Надеюсь, это поможет мне решить большинство ошибок в этой теме ...

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