Настройка обработчика веб-развертывания
Вера А
В этом руководстве представлен базовый обзор шагов по настройке обработчика веб-развертывания на размещенном сервере и тестировании того, что пользователь может развертывать приложения на веб-сайте. Эта программа установки будет использовать сведения в этом документе для установки средства веб-развертывания на новый сервер и настройки рекомендуемых параметров.
Необходимые компоненты
Для этого руководства требуются следующие предварительные требования:
- платформа .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 с содержимым, задавать разрешения на файлы и развертывать базы данных.
Часть 1. Настройка разрешений WMSVC и диспетчера IIS
- Установите СЛУЖБЫ IIS и службу управления веб-сайтами на сервере Windows Server 2008.
- Настройте WMSVC таким образом, чтобы удаленные подключения были разрешены.
a. Откройте диспетчер служб IIS.
b. Выберите узел сервера.
c. В представлении компонентов сервера дважды щелкните значок службы управления.
d. Убедитесь, что выбран флажок "Включить удаленные подключения" проверка box. Если поле проверка не выбрано и не выделено серым цветом, используйте панель действий, чтобы остановить службу WMSvc. Это позволит выбрать проверка box.
д) В области действий справа нажмите кнопку "Пуск". Поле "Включить удаленные подключения" проверка box будет выбрано и снято серым цветом. - Предоставьте учетной записи, в которой выполняется WMSvc (например, локальная служба) разрешения на полный доступ к каталогу клиента.
- После создания веб-сайта для пользователя разрешите пользователю доступ к его веб-сайту.
a. Откройте диспетчер служб IIS. b. Выберите веб-сайт, которым пользователь будет управлять удаленно.
c. В представлении функций дважды щелкните значок разрешений диспетчера IIS. d. На странице разрешений диспетчера IIS в области "Действия" нажмите кнопку "Разрешить пользователя".
д) В диалоговом окне "Разрешить пользователю" выберите тип пользователя (Windows или ДИСПЕТЧЕР IIS), а затем нажмите кнопку "Выбрать", чтобы выбрать учетную запись пользователя.
f. Нажмите кнопку "ОК ", чтобы закрыть диалоговое окно "Разрешить пользователю ".
Дополнительные сведения о учетных записях пользователей диспетчера IIS см. в статье "Разрешить учетной записи пользователя диспетчера IIS Подключение на сайт или приложение (IIS 7)".
Часть 2. Создание правил делегирования для пользователей веб-развертывания
- Если вы еще не сделали этого, скачайте средство веб-развертывания и установите его на веб-сервере.
- Создайте правила делегирования для функций веб-развертывания (поставщиков), которые необходимо разрешить пользователям. Чтобы разрешить пользователю развертывать приложения и содержимое на своем веб-сайте:
a. Откройте диспетчер служб IIS.
b. Выберите узел сервера.
c. В представлении компонентов сервера дважды щелкните значок делегирования службы управления.
d. В области действий справа нажмите кнопку "Добавить правило" ...
д) Выберите шаблон правила "Развернуть приложения с помощью правила контента". Этот шаблон создает правило, позволяющее любому авторизованному пользователю WMSVC использовать содержимое Web DeployPath и поставщики iisApp для развертывания приложений в его область.
f. Нажмите кнопку "ОК" , чтобы открыть шаблон.
ж. Нажмите кнопку ОК, чтобы создать правило.
h. В диалоговом окне "Добавление пользователя в правило" введите звездочку (*). Это позволит каждому пользователю развертывать приложения на его или ее пользователя область.
ПРИМЕЧАНИЕ. Если вы хотите выполнить синхронизацию только администратора, перейдите на страницу делегирования службы управления. В области действий щелкните "Изменить функцию Параметры", а затем выберите "Разрешить администраторам обходить правила".
Пометить папки как правило приложений
Чтобы разрешить каждому пользователю создавать приложение на своем веб-сайте:
a. Нажмите кнопку " Добавить правило... b". Выберите шаблон правила "Пометить папки в качестве приложений". Этот шаблон позволяет всем авторизованным пользователям WMSVC использовать поставщик createApp для веб-развертывания для создания приложений в область пользователя. Приложения наследуют все параметры от родительского элемента, включая пул приложений. c. Нажмите кнопку "ОК" , чтобы открыть шаблон.
d. В разделе "Запуски" выберите SpecificUser для типа удостоверения и нажмите кнопку Set..., чтобы указать учетную запись пользователя, которая будет выполнять эту операцию. Чтобы это правило работало, правило должно выполняться как пользователь, имеющий доступ к записи в файл конфигурации applicationHost.config. Рекомендуется создать учетную запись (например, CreateAppUser), которая не входит в группу Администратор istrators, и предоставить ей только минимальные необходимые разрешения. Для этого:- Создайте учетную запись пользователя.
- Предоставьте разрешение
%windir%\system32\inetsrv\config
на чтение. - Предоставьте разрешение
%windir%\system32\inetsrv\config\applicationHost.config
на изменение .
В диалоговом окне "Добавление пользователя в правило" введите звездочку (*). Это позволит каждому пользователю создавать приложения на своем веб-сайте.
Развертывание правила баз данных
- Чтобы разрешить пользователям развертывать базы данных на своих веб-сайтах:
a. Нажмите кнопку " Добавить правило ... b". Выберите шаблон правила "Развернуть базы данных". Этот шаблон позволяет любым авторизованным пользователям WMSVC (как указано в части 1) развертывать базы данных на серверах баз данных SQL. c. Нажмите кнопку "ОК" , чтобы открыть шаблон.
d. Добавьте путь для авторизации, например Server=Server1, чтобы разрешить любому пользователю развертываться на этом сервере с помощью учетных данных SQL или Server=Server1; Database={userName}_db1 ограничить определенные базы данных, соответствующие имени пользователя.
д) Нажмите кнопку ОК, чтобы создать правило. - В диалоговом окне "Добавление пользователя в правило" введите звездочку (*). Это позволит каждому пользователю развертывать базы данных на своем веб-сайте.
Установка правила разрешений
- Чтобы разрешить каждому пользователю развертывать приложения и содержимое на своем веб-сайте:
a. Выберите шаблон правила... b. Выберите шаблон правила "Задать разрешения". Этот шаблон позволяет любому авторизованному пользователю WMSVC задать списки управления доступом в файловой системе. c. Нажмите кнопку "ОК" , чтобы открыть шаблон.
d. Нажмите кнопку ОК, чтобы создать правило. - В диалоговом окне "Добавление пользователя в правило" введите звездочку (*). Это позволит каждому пользователю развертывать приложения и содержимое на своем веб-сайте.
При необходимости включите трассировку для WMSvc
Если вы хотите включить трассировку для WMSvc, см . раздел "Настройка трассировки веб-службы управления". Журналы трассировки хранятся в %systemdrive%\inetpub\logs\wmsvc\tracinglogfiles\w3svc1
.
Часть 3. Тестирование Подключение пользователя на веб-сайте
- Скачайте и установите средство веб-развертывания на клиентском компьютере с установленным диспетчером удаленных служб IIS или используйте локальный сервер. Рекомендуется сначала протестировать локальный сервер, чтобы изолировать все проблемы, которые могут быть вызваны параметрами сети, брандмауэра или прокси-сервера.
- Проверьте подключение к веб-сайту пользователя с помощью учетных данных, созданных для пользователя:
a. Откройте диспетчер служб IIS.
b. Щелкните правой кнопкой мыши узел начальной страницы .
c. Выберите Подключение на сайт... (Примечание. Не выбирайте Подключение на сервер)
d. В текстовом поле имени сервера введите localhost.
д) В текстовом поле "Имя сайта" введите имя веб-сайта пользователя, который включен для удаленного управления.
f. Нажмите кнопку Далее.
ж. В текстовом поле "Имя пользователя" введите пользователя, авторизованного для веб-сайта.
h. В текстовом поле "Пароль" введите пароль пользователя.
i. Нажмите кнопку " Далее ", чтобы завершить подключение. Возможно, вам будет предложено доверять сертификату, если вы используете ненадежный или самозаверяющий сертификат. В правом нижнем углу диспетчера IIS отображается новое состояние подключения (например, localhost 8172 в качестве SampleUser). - Создайте быстрый пакет приложения, чтобы убедиться, что правила авторизации работают:
a. В области "Действия" справа щелкните "Экспорт приложения" ...
b. Откроется мастер экспорта приложений , нажмите кнопку "Далее " на всех экранах, чтобы принять значения по умолчанию и создать пакет. - Теперь, когда вы создали пакет, убедитесь, что его можно установить:
a. В области действий нажмите кнопку "Импорт приложения...
b. Нажмите кнопку Далее. c. На странице "Параметры" измените имя приложения на то, что еще не существует на веб-сайте, чтобы убедиться, что пользователь может создавать приложения.
d. Завершите работу мастера. - Наконец, необходимо скачать пакет приложения для установки приложения на этот веб-сайт, чтобы убедиться, что база данных и другие параметры работают.
Устранение неполадок
Во время развертывания могут возникать некоторые распространенные проблемы:
Пользователь получает 401 несанкционированную ошибку при попытке подключиться к веб-сайту.
- Причины. Эта ошибка возникает из WMSVC и обычно является ошибкой с именем пользователя или паролем или потому, что у пользователя нет доступа к веб-сайту.
- Разрешения. Проверьте имя пользователя и пароль и у пользователя есть доступ к веб-сайту.
Пользователь получает ошибку сервера при попытке импортировать или экспортировать приложение.
Причины. Эта ошибка возникает из обработчика веб-развертывания и обычно возникает проблема с правилами развертывания. Так как пользователь успешно подключен, это не проблема с WMSVC. Правило развертывания может иметь опечатку, пользователь, выполняющий развертывание, может не быть авторизован или удостоверение runAs может не иметь доступа.
Разрешения. Откройте журналы
%systemdrive%\inetpub\logs\wmsvc\tracinglogfiles\w3svc1
трассировки и просмотрите, какое правило не удается авторизовать.- Найдите журналы, содержащие сбои, такие как "Сведения: правило не найдено, которое может авторизовать пользователя "server1\siteowner", поставщика appPoolConfig, операции "Чтение", путь "DefaultAppPool". В этом случае поставщик appPoolConfig не авторизован, и пользователь пытался добавить поставщика, который он не может добавить.
- Еще одна распространенная ошибка заключается в том, что пользователь RunAs, используемый для создания приложений, не имеет правильного доступа к конфигурации. В этом случае Procmon — это полезное средство для определения того, откуда может поступать ошибка отказа в доступе.
Итоги
В этом руководстве показано, как настроить WMSVC и обработчик развертывания, чтобы пользователи могли управлять своими веб-приложениями и описывать действия по созданию и установке пакета с помощью диспетчера IIS, чтобы убедиться, что правила делегирования работают.