Как использовать Web Deploy 3.0 с учетной записью без прав администратора

Я пытаюсь развернуть веб-сайт ASP.net MVC, используя учетную запись без прав администратора (с Web Deploy 3.0). Согласно всем видео и документации, которые я видел, это возможно. Однако, когда я пытаюсь развернуть, я получаю сообщение об ошибке (ERROR_USER_NOT_ADMIN).

Я добавил пользователя в разделе «Управление пользователями IIS» на сервере. Этот пользователь существует на сайте в разделе «Разрешения диспетчера IIS».

Что мне не хватает?

Вот pubxml:

<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <WebPublishMethod>MSDeploy</WebPublishMethod>
    <SiteUrlToLaunchAfterPublish>http://sitename.com/</SiteUrlToLaunchAfterPublish>
    <MSDeployServiceURL>http://server.com</MSDeployServiceURL>
    <DeployIisAppPath>IISsitename</DeployIisAppPath>
    <RemoteSitePhysicalPath />
    <SkipExtraFilesOnServer>True</SkipExtraFilesOnServer>
    <MSDeployPublishMethod>RemoteAgent</MSDeployPublishMethod>
    <UserName>user</UserName>
    <_SavePWD>True</_SavePWD>
    <PublishDatabaseSettings>
      <Objects xmlns="">
      </Objects>
    </PublishDatabaseSettings>
  </PropertyGroup>
</Project>

http://www.iis.net/learn/publish/troubleshooting-web-deploy/web-deploy-error-codes#ERROR_USER_NOT_ADMIN

Диагностика ERROR_USER_NOT_ADMIN — это происходит, если вы пытаетесь подключиться к службе удаленного агента, но не предоставили соответствующие учетные данные администратора. Решение. Служба удаленного агента принимает либо встроенные учетные данные администратора, либо администратора домена. Если у вас не доменная настройка и вы хотите использовать учетную запись, отличную от встроенной администраторской, выполните следующие действия: Создайте отдельную группу пользователей MSDepSvcUsers на удаленном компьютере. Создайте локальную учетную запись A как на локальном, так и на удаленном компьютере. Добавьте A в MSDepSvcUsers на удаленном компьютере. Используйте учетную запись A для публикации, это позволит вам публиковать без необходимости использовать встроенную> учетную запись администратора.


person Ryan Langton    schedule 06.03.2013    source источник
comment
Проблема заключалась в том, что он использовал развертывание удаленной службы, а не веб-развертывание. При использовании удаленного развертывания службы учетная запись должна быть администратором. Веб-развертывание позволяет использовать учетные записи без прав администратора. Чтобы это исправить, мне пришлось изменить MSDeployServiceURL (в pubxml) на server.com:8172/MsDeploy. axd — изменен на https, добавлен порт и MsDeploy.axd   -  person Ryan Langton    schedule 06.03.2013
comment
Не могли бы вы поделиться своими окончательными настройками в целом, чтобы дать мне полный контекст? Также вы в конечном итоге создали правила делегирования в IIS?   -  person MADCookie    schedule 12.03.2014


Ответы (1)


Я думаю, вам также необходимо использовать функцию делегирования службы управления в iis, чтобы создать правила делегирования для пользователя, которого вы развертываете.

См. часть 2 этой статьи

http://www.iis.net/learn/publish/using-web-deploy/configure-the-web-deployment-handler

person Rik Leigh    schedule 06.03.2013