Настройка обработчика веб-развертывания

Вера А

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

Необходимые компоненты

Для этого руководства требуются следующие предварительные требования:

  • платформа .NET Framework 2.0 с пакетом обновления 1 (SP1) или более поздней версии
  • Средство веб-развертывания 1.0 или 1.1
  • IIS 7 или более поздней версии с установленной службой управления веб-сайтами (WMSvc)

Примечание. Если средство веб-развертывания еще не установлено, см. статью "Установка средства веб-развертывания".

Общие сведения о обработчике веб-развертывания

Обработчик интегрирован со службой веб-управления (WMSVC), которая поставляется с IIS 7.0 в Windows Server 2008 и IIS 7.5 в Windows 2008 R2.

Сначала необходимо создать учетную запись (пользователя IIS Manager или учетную запись Windows) для пользователя. Дополнительные сведения о создании учетных записей пользователей диспетчера IIS см. в статье Настройка удаленного Администратор istration и делегирования компонентов в службах IIS.

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

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

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

Схема того, как пользователь сначала подключается к авторизованному W M S V C, прежде чем запрос на развертывание направляется обработчику и авторизован в отношении собственных правил обработчика.

Часть 1. Настройка разрешений WMSVC и диспетчера IIS

  1. Установите СЛУЖБЫ IIS и службу управления веб-сайтами на сервере Windows Server 2008.
  2. Настройте WMSVC таким образом, чтобы удаленные подключения были разрешены.
    a. Откройте диспетчер служб IIS.
    b. Выберите узел сервера.
    c. В представлении компонентов сервера дважды щелкните значок службы управления.
    d. Убедитесь, что выбран флажок "Включить удаленные подключения" проверка box. Если поле проверка не выбрано и не выделено серым цветом, используйте панель действий, чтобы остановить службу WMSvc. Это позволит выбрать проверка box.
    д) В области действий справа нажмите кнопку "Пуск". Поле "Включить удаленные подключения" проверка box будет выбрано и снято серым цветом.
  3. Предоставьте учетной записи, в которой выполняется WMSvc (например, локальная служба) разрешения на полный доступ к каталогу клиента.
  4. После создания веб-сайта для пользователя разрешите пользователю доступ к его веб-сайту.
    a. Откройте диспетчер служб IIS. b. Выберите веб-сайт, которым пользователь будет управлять удаленно.
    c. В представлении функций дважды щелкните значок разрешений диспетчера IIS. d. На странице разрешений диспетчера IIS в области "Действия" нажмите кнопку "Разрешить пользователя".
    д) В диалоговом окне "Разрешить пользователю" выберите тип пользователя (Windows или ДИСПЕТЧЕР IIS), а затем нажмите кнопку "Выбрать", чтобы выбрать учетную запись пользователя.
    f. Нажмите кнопку "ОК ", чтобы закрыть диалоговое окно "Разрешить пользователю ".

Дополнительные сведения о учетных записях пользователей диспетчера IIS см. в статье "Разрешить учетной записи пользователя диспетчера IIS Подключение на сайт или приложение (IIS 7)".

Часть 2. Создание правил делегирования для пользователей веб-развертывания

  1. Если вы еще не сделали этого, скачайте средство веб-развертывания и установите его на веб-сервере.
  2. Создайте правила делегирования для функций веб-развертывания (поставщиков), которые необходимо разрешить пользователям. Чтобы разрешить пользователю развертывать приложения и содержимое на своем веб-сайте:
    a. Откройте диспетчер служб IIS.
    b. Выберите узел сервера.
    c. В представлении компонентов сервера дважды щелкните значок делегирования службы управления.
    Снимок экрана: представление
    d. В области действий справа нажмите кнопку "Добавить правило" ...Снимок экрана: панель действий на странице делегирования службы управления. Выделен шаблон правила.
    д) Выберите шаблон правила "Развернуть приложения с помощью правила контента". Этот шаблон создает правило, позволяющее любому авторизованному пользователю WMSVC использовать содержимое Web DeployPath и поставщики iisApp для развертывания приложений в его область.
    Снимок экрана: диалоговое окно
    f. Нажмите кнопку "ОК" , чтобы открыть шаблон.
    ж. Нажмите кнопку ОК, чтобы создать правило.
    h. В диалоговом окне "Добавление пользователя в правило" введите звездочку (*). Это позволит каждому пользователю развертывать приложения на его или ее пользователя область.

ПРИМЕЧАНИЕ. Если вы хотите выполнить синхронизацию только администратора, перейдите на страницу делегирования службы управления. В области действий щелкните "Изменить функцию Параметры", а затем выберите "Разрешить администраторам обходить правила".

Пометить папки как правило приложений

  1. Чтобы разрешить каждому пользователю создавать приложение на своем веб-сайте:
    a. Нажмите кнопку " Добавить правило... b". Выберите шаблон правила "Пометить папки в качестве приложений". Этот шаблон позволяет всем авторизованным пользователям WMSVC использовать поставщик createApp для веб-развертывания для создания приложений в область пользователя. Приложения наследуют все параметры от родительского элемента, включая пул приложений. c. Нажмите кнопку "ОК" , чтобы открыть шаблон.
    d. В разделе "Запуски" выберите SpecificUser для типа удостоверения и нажмите кнопку Set..., чтобы указать учетную запись пользователя, которая будет выполнять эту операцию. Чтобы это правило работало, правило должно выполняться как пользователь, имеющий доступ к записи в файл конфигурации applicationHost.config. Рекомендуется создать учетную запись (например, CreateAppUser), которая не входит в группу Администратор istrators, и предоставить ей только минимальные необходимые разрешения. Для этого:

    • Создайте учетную запись пользователя.
    • Предоставьте разрешение %windir%\system32\inetsrv\configна чтение.
    • Предоставьте разрешение %windir%\system32\inetsrv\config\applicationHost.configна изменение .
  2. В диалоговом окне "Добавление пользователя в правило" введите звездочку (*). Это позволит каждому пользователю создавать приложения на своем веб-сайте.

Развертывание правила баз данных

  1. Чтобы разрешить пользователям развертывать базы данных на своих веб-сайтах:
    a. Нажмите кнопку " Добавить правило ... b". Выберите шаблон правила "Развернуть базы данных". Этот шаблон позволяет любым авторизованным пользователям WMSVC (как указано в части 1) развертывать базы данных на серверах баз данных SQL. c. Нажмите кнопку "ОК" , чтобы открыть шаблон.
    d. Добавьте путь для авторизации, например Server=Server1, чтобы разрешить любому пользователю развертываться на этом сервере с помощью учетных данных SQL или Server=Server1; Database={userName}_db1 ограничить определенные базы данных, соответствующие имени пользователя.
    д) Нажмите кнопку ОК, чтобы создать правило.
  2. В диалоговом окне "Добавление пользователя в правило" введите звездочку (*). Это позволит каждому пользователю развертывать базы данных на своем веб-сайте.

Установка правила разрешений

  1. Чтобы разрешить каждому пользователю развертывать приложения и содержимое на своем веб-сайте:
    a. Выберите шаблон правила... b. Выберите шаблон правила "Задать разрешения". Этот шаблон позволяет любому авторизованному пользователю WMSVC задать списки управления доступом в файловой системе. c. Нажмите кнопку "ОК" , чтобы открыть шаблон.
    d. Нажмите кнопку ОК, чтобы создать правило.
  2. В диалоговом окне "Добавление пользователя в правило" введите звездочку (*). Это позволит каждому пользователю развертывать приложения и содержимое на своем веб-сайте.

При необходимости включите трассировку для WMSvc

Если вы хотите включить трассировку для WMSvc, см . раздел "Настройка трассировки веб-службы управления". Журналы трассировки хранятся в %systemdrive%\inetpub\logs\wmsvc\tracinglogfiles\w3svc1.

Часть 3. Тестирование Подключение пользователя на веб-сайте

  1. Скачайте и установите средство веб-развертывания на клиентском компьютере с установленным диспетчером удаленных служб IIS или используйте локальный сервер. Рекомендуется сначала протестировать локальный сервер, чтобы изолировать все проблемы, которые могут быть вызваны параметрами сети, брандмауэра или прокси-сервера.
  2. Проверьте подключение к веб-сайту пользователя с помощью учетных данных, созданных для пользователя:
    a. Откройте диспетчер служб IIS.
    b. Щелкните правой кнопкой мыши узел начальной страницы .
    c. Выберите Подключение на сайт... (Примечание. Не выбирайте Подключение на сервер)
    d. В текстовом поле имени сервера введите localhost.
    д) В текстовом поле "Имя сайта" введите имя веб-сайта пользователя, который включен для удаленного управления.
    f. Нажмите кнопку Далее.
    ж. В текстовом поле "Имя пользователя" введите пользователя, авторизованного для веб-сайта.
    h. В текстовом поле "Пароль" введите пароль пользователя.
    i. Нажмите кнопку " Далее ", чтобы завершить подключение. Возможно, вам будет предложено доверять сертификату, если вы используете ненадежный или самозаверяющий сертификат. В правом нижнем углу диспетчера IIS отображается новое состояние подключения (например, localhost 8172 в качестве SampleUser).
  3. Создайте быстрый пакет приложения, чтобы убедиться, что правила авторизации работают:
    a. В области "Действия" справа щелкните "Экспорт приложения" ...
    b. Откроется мастер экспорта приложений , нажмите кнопку "Далее " на всех экранах, чтобы принять значения по умолчанию и создать пакет.
  4. Теперь, когда вы создали пакет, убедитесь, что его можно установить:
    a. В области действий нажмите кнопку "Импорт приложения...
    b. Нажмите кнопку Далее. c. На странице "Параметры" измените имя приложения на то, что еще не существует на веб-сайте, чтобы убедиться, что пользователь может создавать приложения.
    d. Завершите работу мастера.
  5. Наконец, необходимо скачать пакет приложения для установки приложения на этот веб-сайт, чтобы убедиться, что база данных и другие параметры работают.

Устранение неполадок

Во время развертывания могут возникать некоторые распространенные проблемы:

Пользователь получает 401 несанкционированную ошибку при попытке подключиться к веб-сайту.

  • Причины. Эта ошибка возникает из WMSVC и обычно является ошибкой с именем пользователя или паролем или потому, что у пользователя нет доступа к веб-сайту.
  • Разрешения. Проверьте имя пользователя и пароль и у пользователя есть доступ к веб-сайту.

Пользователь получает ошибку сервера при попытке импортировать или экспортировать приложение.

  • Причины. Эта ошибка возникает из обработчика веб-развертывания и обычно возникает проблема с правилами развертывания. Так как пользователь успешно подключен, это не проблема с WMSVC. Правило развертывания может иметь опечатку, пользователь, выполняющий развертывание, может не быть авторизован или удостоверение runAs может не иметь доступа.

  • Разрешения. Откройте журналы %systemdrive%\inetpub\logs\wmsvc\tracinglogfiles\w3svc1 трассировки и просмотрите, какое правило не удается авторизовать.

    • Найдите журналы, содержащие сбои, такие как "Сведения: правило не найдено, которое может авторизовать пользователя "server1\siteowner", поставщика appPoolConfig, операции "Чтение", путь "DefaultAppPool". В этом случае поставщик appPoolConfig не авторизован, и пользователь пытался добавить поставщика, который он не может добавить.
    • Еще одна распространенная ошибка заключается в том, что пользователь RunAs, используемый для создания приложений, не имеет правильного доступа к конфигурации. В этом случае Procmon — это полезное средство для определения того, откуда может поступать ошибка отказа в доступе.

Итоги

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