【问题标题】:How to use Web Deploy 3.0 with a non-admin account如何通过非管理员帐户使用 Web Deploy 3.0
【发布时间】:2013-03-06 17:31:14
【问题描述】:

我正在尝试使用非管理员帐户(使用 Web Deploy 3.0)部署 ASP.net MVC 网站。根据我看过的所有视频和文档,这是可能的。但是,当我尝试部署时出现错误 (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 发布,这将允许您无需使用内置 > 管理员帐号即可发布。

【问题讨论】:

  • 问题在于它使用的是远程服务部署而不是 Web 部署。如果使用远程服务部署,该帐户必须是管理员。 Web 部署允许非管理员帐户。为了修复,我不得不将 MSDeployServiceURL(在 pubxml 中)更改为 server.com:8172/MsDeploy.axd - 更改为 https,添加端口和 MsDeploy.axd
  • 您能否完整地分享您的最终设置以提供完整的背景信息?您是否最终在 IIS 中创建了委派规则?

标签: asp.net-mvc webdeploy


【解决方案1】:

我认为您还需要使用 iis 中的管理服务委托功能为您部署的用户创建委托规则。

请参阅本文的第 2 部分

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-22
    • 2014-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-01
    相关资源
    最近更新 更多