Ошибка доступа к реестру при Миграции приложения ASP.NET в IIS7

Я запускаю Windows 7 64-разрядных и iis7. Я пытаюсь установить веб-приложение, которое было ранее в iis6 на XP. Это дает мне ошибку ниже. Я добавил пользователя сетевой службы к Группе пользователей Монитора производительности напрасно.

Доступ к 'Глобальному' ключу реестра запрещен. Описание: необработанное исключение произошло во время выполнения текущего веб-запроса. Рассмотрите отслеживание стека для получения дополнительной информации об ошибке и где это произошло в коде.

Детали исключения: Система. UnauthorizedAccessException: Доступ к 'Глобальному' ключу реестра запрещен.

ASP.NET не разрешен получить доступ к требуемому ресурсу. Рассмотрите предоставление прав доступа к ресурсу к идентификационным данным запроса ASP.NET. ASP.NET имеет идентификационные данные базового процесса (обычно {МАШИНА }\\ASPNET на IIS 5 или Сетевая служба на IIS 6), который используется, если приложение не является олицетворением. Если приложение явится олицетворением через, то идентификационные данные будут анонимным пользователем (обычно IUSR_MACHINENAME) или аутентифицируемый пользователь запроса.

Для предоставления доступа ASP.NET в файл щелкните правой кнопкой по файлу в Проводнике, выберите "Properties" и выберите вкладку безопасности. Нажмите "Add" для добавления соответствующего пользователя или группы. Выделите учетную запись ASP.NET и установите флажки для желаемого доступа.

21
задан Jon Seigel 27 April 2010 в 04:02
поделиться

2 ответа

Проблема в том, что пользователь в Windows известен как DefaultAppPool. Однако он нигде не отображается в диалогах безопасности. Однако он настоящий пользователь. Моя проблема заключалась в том, что мне нужно было, чтобы этот пользователь был частью группы PerformanceMonitorUsers, потому что моя веб-служба использовала PerformanceCounters. Оказывается, это нужно делать из командной строки.

net localgroup «Пользователи монитора производительности» DefaultAppPool / add

Иногда это не работает и выдает ошибку: «Нет такого пользователя или группы: DefaultAppPool»

Чтобы добавить пользователя другим способом :

  1. Перейдите в меню «Пуск» в Windows 7.
  2. Введите «Редактировать пользователей» в поле поиска.
  3. Откройте «Редактировать локальных пользователей и группы».
  4. Перейти в папку групп.
  5. Щелкните правой кнопкой мыши группу «Пользователи монитора производительности» и перейдите к свойствам.
  6. Нажмите кнопку «Добавить ...».
  7. Введите «IIS APPPool \ DefaultAppPool» и нажмите «Проверить имена».
  8. Нажмите OK, и все готово.
23
ответ дан 29 November 2019 в 20:51
поделиться

Частные члены недоступны в производных классах.

-121--3832447-

Интересное отличие здесь - использование # если DEBUG на странице aspx извлекает из тэга в web.config, но при использовании его в коде background извлекает DEBUG из константы из конфигурации сборки в файле проекта. Таким образом, они фактически получают доступ к двум различным настройкам.

Таким образом, насколько я могу судить, это на самом деле невозможно.

-121--1538305-

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

0
ответ дан 29 November 2019 в 20:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: