Обзор разрешений IIS7-ApplicationPoolIdentity



мы недавно обновились до IIS7 в качестве основного веб-сервера, и мне нужен обзор с точки зрения разрешений. Ранее при необходимости записи в файловую систему я бы дал пользователю AppPool (сетевая служба) доступ к каталогу или файлу.



в IIS7 я вижу, что по умолчанию пользователь AppPool установлен в ApplicationPoolIdentity. Поэтому, когда я проверяю диспетчер задач, я вижу, что учетная запись пользователя называется 'WebSite.com' выполняется процесс IIS ('Website.com' будучи название веб-сайта в IIS)



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



редактировать ==============================================================================



см. ниже для проблемы в снимке экрана. Наш сайт (www.silverchip.co.uk) работает на имя пользователя SilverChip.co.uk. однако когда я добавляю pemissions, этот пользователь doenst существует!



enter image description here



=================================См. AppPool Image



enter image description here

1090   8  

8 ответов:

ApplicationPoolIdentity на самом деле является лучшей практикой для использования в IIS7. Это динамически созданная, непривилегированная учетная запись. Чтобы добавить файл системы безопасности для конкретного приложения см. В разделе IIS.net'ы "удостоверения пула приложений". Быстрая версия:

Если пул приложений называется " DefaultAppPool "(просто замените этот текст ниже, если он называется по-другому)

  1. Открыть Проводник Windows
  2. Выберите файл или справочник.
  3. щелкните правой кнопкой мыши файл и выберите "Свойства"
  4. выберите вкладку "Безопасность"
  5. Нажмите кнопку "Изменить", а затем кнопку" Добавить"
  6. Нажмите кнопку" Locations " и убедитесь, что вы выбрали местные машины. (не домен Windows, если сервер принадлежит к одному.)
  7. введите "IIS AppPool\DefaultAppPool" в текстовом поле " введите имена объектов для выбора:". (Не забудьте изменить "DefaultAppPool" здесь к тому, что вы назвали своим пулом приложений.)
  8. Нажмите кнопку "Проверить имена" и нажмите кнопку "ОК".

Не забудьте использовать локальное имя сервера, а не доменное имя, при разрешении имени "IIS AppPool\DefaultAppPool" (просто напоминание, потому что это немного сбило меня с толку):enter image description here

в Windows Server 2008 (r2) нельзя назначить удостоверение пула приложений для папки с помощью свойства->безопасность. Вы можете сделать это через командную строку администратора, используя следующее:

icacls "c:\yourdirectory" /t /grant "IIS AppPool\DefaultAppPool":(R)

предоставление доступа к IIS AppPool\YourAppPoolName пользователей может быть не хватает с конфигурациями IIS по умолчанию.

в моем случае, у меня еще ошибка ошибка HTTP 401.3-несанкционированный после добавления пользователя AppPool и это было исправлено только после добавления разрешений на IUSR пользователей.

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

authentication tab

кредиты на такой ответ: ошибка HTTP 401.3-несанкционированный

главный ответ от Джона Адамса

вот как это реализовать для людей PowerShell

$IncommingPath = "F:\WebContent"
$Acl = Get-Acl $IncommingPath
$Ar = New-Object  system.security.accesscontrol.filesystemaccessrule("IIS AppPool\DefaultAppPool","FullControl","ContainerInherit, ObjectInherit", "None", "Allow")
$Acl.SetAccessRule($Ar)
Set-Acl $IncommingPath $Acl

просто чтобы добавить к путанице, диалоговое окно эффективных разрешений (Проводник Windows) не работает для этих учетных записей. У меня есть сайт "Umbo4", использующий сквозную аутентификацию, и посмотрел на эффективные разрешения пользователя в корневой папке сайта. Тест Check Names разрешил имя "IIS AppPool\Umbo4", но эффективные разрешения показывают, что у пользователя вообще не было разрешений на папку (все флажки сняты).

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

я исправил все мои asp.net проблемы просто путем создания нового пользователя под названием IUSER с паролем и добавил его в сетевую службу и группы пользователей. Затем создайте все свои виртуальные сайты и приложения, установите аутентификацию в IUSER с его паролем.. установите высокий уровень доступа к файлам, чтобы включить IUSER и BAM он исправил по крайней мере 3-4 проблемы, включая этот..

Дэйв

часть A: настройка пула приложений

предположим, что пул приложений называется "MyPool" Перейдите в раздел "Дополнительные настройки" пула приложений из диспетчера IIS

  1. прокрутите вниз до "Identity". При попытке изменить значение появится диалоговое окно. Выберите "встроенная учетная запись" и под ней выберите "ApplicationPoolIdentity".

  2. несколько строк ниже "Identity", вы должны найти "загрузить профиль пользователя". Этот значение должно быть установлено в 'True'.

часть B: настройка вашего сайта

  1. название сайта: SiteName (просто пример)
  2. физический путь: C:\Whatever (просто пример)
  3. подключиться... : Пользователь приложения (сквозная аутентификация) (Вышеуказанные настройки можно найти в разделе "Основные настройки" сайта в Диспетчере IIS)
  4. после настройки основных параметров найдите "аутентификацию" конфигурация под ' IIS ' в главной консоли сайта. Открыть его. Вы должны увидеть опцию для анонимной проверки подлинности. Убедитесь, что он включен. Щелкните правой кнопкой мыши и редактировать...' он. Выберите "Удостоверение Пула Приложений".

часть C: настройка папки

папка, о которой идет речь C:\Whatever

  1. перейдите в раздел Свойства-общий доступ-расширенный общий доступ-разрешения и отметьте "поделиться этой папкой"
  2. в то же диалоговое окно, вы найдете кнопку "разрешения". Щелкнуть его.
  3. откроется новое диалоговое окно. Нажмите Кнопку "Добавить".
  4. откроется новое диалоговое окно "Выбор пользователей или групп". В разделе "из этого расположения" убедитесь, что имя совпадает с вашим локальным хост-компьютером. Затем в разделе 'введите имена объектов', тип 'ИИС\пул приложений MyPool" и нажмите кнопку "Проверить имена", а затем "ОК'
  5. дайте полные разрешения на общий доступ для пользователя "MyPool". Примените его и закройте папку свойства
  6. снова откройте Свойства папки. На этот раз перейдите в раздел Security - Advanced - Permission и нажмите кнопку Добавить. Там будет опция "выбрать принципала" в верхней части, или какой-либо другой вариант, чтобы выбрать пользователя. Щелкнуть его.
  7. диалоговое окно "Выбор пользователей или групп" откроется снова. Повторите шаг 4.
  8. дайте все или столько разрешений, которые вам нужны для пользователя "MyPool".
  9. установите флажок ' заменить все разрешения дочерних объектов...- и подать заявление, и закрыть.

теперь вы можете использовать обзор веб-сайта

Comments

    Ничего не найдено.