<configuration>
  <system.web>
    <!-- Прочие настройки пропущены -->
    <identity impersonate="true" />
  </system.web>
</configuration>

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

<identity impersonate="true">

Имейте в виду, что если вы открыли анонимный доступ, то можете использовать учетную запись IUSR_[имя_компьютера]. Применяя этот подход, заимствованная учетная запись должна иметь все права, необходимые для запуска кода ASP.NET, включая доступ на чтение-запись в каталог C:\[WinDir]\Microsoft.NET \Framework\[Version]\Temporary ASP.NET Files, где находятся скомпилированные файлы ASP.NET. В противном случае будет выдана ошибка, и страница не будет запущена.

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

<identity impersonate="true" userName="matthew" password="secret">

Этот подход более гибкий, чем замена настроек учетной записи machine.config. Настройки machine.config определяют учетную запись по умолчанию, которая будет применена на компьютере для Web-приложений. С другой стороны, установки заимствования прав переопределяют настройки machine.config для индивидуальных Web-сайтов. К сожалению, пароль для заимствованной учетной записи по умолчанию не может быть зашифрован в web.config. Это представляет собой риск нарушения безопасности, если другие пользователи имеют доступ к компьютеру и могут прочитать пароль. Риск особенно велик, если вы применяете заимствование прав с высокопривилегированной учетной записью.

К счастью, вы можете зашифровать эти настройки с помощью предлагаемого Microsoft инструмента под названием aspnet_setreg.ехе. Ниже приведены конфигурационные разделы, которые могут быть зашифрованы этой утилитой ( aspnet_regiis.exe не позволяет этого сделать):

предыдущая    следующая страница    вначало главы    оглавление

919

Hosted by uCoz