Как использовать msdeploy и нацелиться на определенный сайт?

при использовании msdeploy и msdeploy.обработчик axd любые попытки развертывания на моем удаленном сервере встречаются с 401 не авторизованной ошибкой и журналами сервера

IISWMSVC_AUTHORIZATION_SERVER_NOT_ALLOWED

только администраторам Windows разрешено подключаться с помощью сервера соединение. Другие пользователи должны использовать ' Connect to Site или Задача приложения, чтобы иметь возможность подключения.

3 ответов


Если вы используете Web Deploy Tool 2.0, вы можете использовать IIS Manager UI, чтобы разрешить пользователям, не являющимся администраторами, развертывать веб-сайт:

  1. запустите диспетчер IIS
  2. щелкните правой кнопкой мыши сайт, который вы хотите опубликовать, нажмите кнопку развернуть, а затем нажмите кнопку " настроить веб-развертывание публикации..."

IIS Manager Web Deploy Publishing

при нажатии кнопки Настройка Web Deploy предоставляет необходимые разрешения выбранному пользователю. Сгенерированный файл можно отбросить.

посмотреть Объявив Веб Развертывание Обновления 2.0!


Это может зависеть от того, как вы также указываете соединение на стороне клиента - если вы используете msdeploy.exe вы бы указали аргумент computername, включая"?site= " запрос, чтобы вы подключались на этом уровне сайта, а не на уровне сервера, например:

средства msdeploy.exe-глагол: dump-источник: iisapp= "siteName", имя_компьютера=https://имя_сервера:8172/msdeploy.классов AXD?сайт= "имя_сайта", имя пользователя=пользователь,пароль=пасс,тип=основной [-allowUntrusted]


Если вы используете WMSvc, я предполагаю, что это IIS7 ...

Если это так, то вы можете развернуть с обычной учетной записью, но вы должны убедиться, что эти 3 критерия выполнены:

ваша учетная запись должна иметь: 1 разрешение диспетчера IIS для сайта / приложения, с которым вы пытаетесь подключиться. 2 правило делегирования для msdeploy, которое гласит, что вам разрешено делать ContentPath операции. 3 фактический доступ файловой системы / ACL к файлам.