Подтвердить что ты не робот

Как запустить iisexpress приложение пула под другим идентификатором

существует ли способ запуска iisexpress пула приложений под другим идентификатором, отличным от текущего зарегистрированного пользователя?

Я обойду эту проблему, используя команду runas, но я хотел бы знать, есть ли что-то встроенное в iisexpress, которое я могу использовать.

4b9b3361

Ответ 1

Похоже, это должно быть возможно. В файле applicationhost.config сайта IIS Express есть элемент <processModel/>, определенный в <applicationPoolDefaults> в разделе <applicationPools>

Элемент <processModel> имеет атрибуты для userName и password.

От MSDN:

Указывает, что ASP.NET будет запускать рабочий процесс с идентификатором Windows, который отличается от идентификатора Windows для идентификатора процесса по умолчанию. По умолчанию этот атрибут установлен на "Машина", и процесс выполняется под учетной записью пользователя с именем ASPNET, которая создается автоматически при установке ASP.NET. Пароль для учетной записи ASPNET криптографически генерируется во время установки. Если действительные учетные данные представлены в этом атрибуте и атрибуте пароля, процесс запускается с указанной учетной записью.

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

Ответ 2

"runas" - это только решение. IIS Express может не учитывать параметры processModel, которые определены в файле applicationhost.config.

Ответ 3

Я не мог заставить вышеуказанное решение работать, и я хотел иметь возможность отлаживать Visual Studio во время работы с IIS Express под разными учетными данными.

  • Откройте командную строку с помощью команды "Запуск от имени администратора" (вам нужны повышенные привилегии) ​​
  • Перейдите в каталог Visual Studio в командной строке (в моем случае: "cd C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE" для VS2010).
  • runas/netonly/user: [domain]\[userid] devenv.exe
  • Откройте свое решение из VS и заполните ваши учетные данные TFS (если применимо).

Теперь вы можете отлаживать как обычно в IISExpress (при условии, что это так, как вы настроили свой проект) под управлением в качестве учетных данных. Это здорово, если вам нужно использовать интегрированную защиту для подключения к базе данных или что-то подобное, но вам нужно использовать разные учетные данные.

Ответ 4

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

Кажется, что опция "Запускать" может работать, но для этого потребуется запустить IIS Express из командной строки (или создать событие) вместо того, чтобы полагаться на запуск Visual Studio.: (

Ответ 5

Runas/netonly IISExpress.exe из командной строки работает и является очень жизнеспособным, если вы так же отчаянно нуждаетесь в ответе, как и мы. Связанный пост