Каковы все учетные записи пользователей для IIS / ASP.NET и чем они отличаются?



под Windows Server 2008 с ASP.NET 4.0 установлен целый ряд связанных учетных записей пользователей, и я не могу понять, какой из них, как они отличаются, и какой из них действительно тот, под которым работает мое приложение. Вот список:




  • группу iis_iusrs

  • IUSR

  • DefaultAppPool

  • ASP.NET v4. 0

  • NETWORK_SERVICE

  • МЕСТНАЯ СЛУЖБА.


Что это?

675   1  

1 ответ:

это очень хороший вопрос, и, к сожалению, многие разработчики не задают достаточно вопросов о безопасности IIS / ASP.NET в контексте того, чтобы быть веб-разработчиком и настраивать IIS. Вот так и вышло....

чтобы покрыть перечисленные личности:

IIS_IUSRS:

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

IUSR:

этот счет аналогичен старому IUSR_<MACHINE_NAME> локальная учетная запись, которая была анонимным пользователем по умолчанию для веб-сайтов IIS5 и IIS6 (т. е. настроенная на вкладке Безопасность каталога свойств сайта).

для получения дополнительной информации о IIS_IUSRS и IUSR посмотреть:

понимание встроенных учетных записей пользователей и групп в IIS 7

DefaultAppPool:

если пул приложений настроен для запуска с использованием функции идентификации пула приложений, то "синтезированная" учетная запись называется IIS AppPool\<pool name> будет создан на лету, чтобы использовать в качестве удостоверения пула. В этом случае будет синтезирована учетная запись под названием IIS AppPool\DefaultAppPool создано на время жизни бассейна. Если вы удалите пул, то эта учетная запись больше не будет существовать. При применении разрешений к файлам и папкам эти необходимо добавить с помощью IIS AppPool\<pool name>. Вы также не увидите эти учетные записи пула в Диспетчере пользователей компьютеров. Дополнительную информацию см. ниже:

Удостоверения Пула Приложений

ASP.NET v4.0: -

это будет идентификатор пула приложений для ASP.NET пул приложений v4. 0. Смотрите DefaultAppPool выше.

NETWORK SERVICE: -

The NETWORK SERVICE учетная запись a встроенный идентификатор, представленный в Windows 2003. NETWORK SERVICE это учетная запись с низким уровнем привилегий, под которой вы можете запускать свои пулы приложений и веб-сайты. Веб-сайт, работающий в пуле Windows 2003, все еще может олицетворять анонимную учетную запись сайта (IUSR_ или все, что вы настроили в качестве анонимного удостоверения).

In ASP.NET до Windows 2008 вы могли бы иметь ASP.NET выполнение запросов под учетной записью пула приложений (обычно NETWORK SERVICE). В качестве альтернативы вы можете настроить ASP.NET к олицетворение анонимной учетной записи сайта через <identity impersonate="true" /> настройка в web.config файл локально (если этот параметр заблокирован, то это должно быть сделано администратором в ).

задание <identity impersonate="true"> обычно используется в средах общего хостинга, где используются общие пулы приложений (в сочетании с настройками частичного доверия для предотвращения разматывания олицетворенной учетной записи).

в IIS7.x/ASP. NET управление олицетворением теперь настроено через аутентификацию особенность конфигурации участка. Таким образом, вы можете настроить запуск от имени идентификатора пула,IUSR или специального анонимного аккаунта.

LOCAL SERVICE:

The LOCAL SERVICE учетная запись-это встроенная учетная запись, используемая диспетчером управления службами. Она имеет минимальный набор привилегий на локальном компьютере. Он имеет довольно ограниченную сферу применения:

LocalService Аккаунт

LOCAL SYSTEM:

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

Учетная Запись LocalSystem

На Практике:

на практике предпочтительным подход к обеспечению безопасности веб-сайта (если сайт получает свой собственный пул приложений - который является значением по умолчанию для нового сайта в MMC IIS7) должен выполняться под Application Pool Identity. Это означает установку идентификатора сайта в Дополнительных параметрах пула приложений на Application Pool Identity:

enter image description here

на веб-сайте вы должны настроить функцию аутентификации:

enter image description here

щелкните правой кнопкой мыши и измените анонимную аутентификацию запись:

enter image description here

обеспечить "удостоверение пула приложений" выбран:

enter image description here

когда вы начинаете применять права доступа к файлам и папкам, вы предоставляете удостоверение пула приложений, какие бы права ни требовались. Например, если вы предоставляете удостоверение пула приложений для ASP.NET v4.0 разрешения пула, то вы можете либо сделать это через проводник:

enter image description here

нажмите Кнопка "Проверить имена":

enter image description here

или вы можете сделать это с помощью ICACLS.EXE утилиты:

icacls c:\wwwroot\mysite /grant "IIS AppPool\ASP.NET v4.0":(CI)(OI)(M)

...или...если пул приложений вашего сайта называется BobsCatPicBlogзатем:

icacls c:\wwwroot\mysite /grant "IIS AppPool\BobsCatPicBlog":(CI)(OI)(M)

я надеюсь, это поможет прояснить ситуацию.

обновление:

я просто наткнулся на этот отличный ответ от 2009 года, которая содержит кучу полезной информации, которую стоит читать:

разница между учетной записью "локальная система" и учетной записью "сетевая служба"?

Comments

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