UnauthorizedAccessException в приложении ASP.NET после изменения идентификатора пула приложений

UnauthorizedAccessException в приложении ASP.NET после изменения идентификатора пула приложений

У меня есть экземпляр SharePoint (MOSS 2007), работающий на Windows Server 2003 и IIS 6. В IIS я настроил приложение ASP.NET через виртуальный каталог на веб-сайте SharePoint. Доступ к SharePoint осуществляется с помощью URLhttp://companyportalи доступ к приложению ASP.NET осуществляется с помощью URL-адресаhttp://companyportal/apps/Default.aspx. Обратите внимание, что для SharePoint и приложения ASP.NET используется один и тот же пул приложений.

Недавно я решил изолировать приложение ASP.NET в его собственном пуле приложений, чтобы оно было полностью независимым от SharePoint и, таким образом, не создавало никаких проблем для портала, если оно по какой-либо причине начнет потреблять чрезмерное количество ресурсов.

Итак, я создал новый пул приложений для приложения ASP.NET. Я создал новую учетную запись службы, которая будет служить идентификатором для этого нового пула приложений, следуя шагам в этомЗапись в блоге MSDN. Я перезапустил новый пул приложений и перешел к приложению ASP.NET. Поведение, которое я наблюдал, следующее:

  • Приложение загружается крайне медленно.
  • В конце концов, отображается страница приложения, что означает, что все вызовы базы данных и т. д. были выполнены успешно.
  • Наконец, я вижу брошенный System.UnauthorizedAccessException. Поскольку Visual Studio 2008 находится на том же сервере, мне предлагается открыть Visual Studio Just-In-Time Debugger, хотя это не дало никакой полезной информации.
  • В средстве просмотра событий я вижу следующие ошибки:

    • Источник: ASP.NET 2.0.50727.0 (Идентификатор события 1334)

      Произошло необработанное исключение, и процесс был завершен.

      Идентификатор приложения: /LM/W3SVC/1/Root/apps

      Идентификатор процесса: 3028

      Исключение: System.UnauthorizedAccessException

      Сообщение: Доступ к порту запрещен.

    • Источник: Ошибка .NET Runtime 2.0(Идентификатор события 5000)

      EventType clr20r3, P1 w3wp.exe, P2 6.0.3790.3959, P3 45d6968e, P4 system, P5 2.0.0.0, P6 504057aa, P7 3bf9, P8 7a, P9 system.unauthorizedaccess, P10 NIL.

После дополнительных поисков на Stack Overflow я выполнил следующий шаг:

aspnet_regiis.exe -GA домен\имя_пользователя

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

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

решение1

Вы добавили своего пользователя в группу IIS_WPG? Это требование в IIS6. Запуск aspnet_regiis -GA предоставит некоторые, но не все разрешения, о которых заботится IIS_WPG.

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

Связанный контент