WebDeploy(401)未经授权的错误

cfb*_*ero 29 iis msbuild msdeploy webdeploy

在尝试使用不是目标服务器上的本地管理员的Windows用户远程部署应用程序时,我使用NTLM身份验证从MsDeploy收到未经授权的错误.我在目标框上的管理服务委派中设置了规则,并检查了所有提供程序.根据此规则,我添加了2个具有允许权限的用户('*',以及正在进行远程部署的我的Windows用户).此外,我已经在我正在尝试部署的网站上授予了Windows用户权限.如果我将Windows用户设置为目标框上的本地管理员并设置"允许管理员绕过规则",则部署正常.如果Windows用户不是本地管理员,则会收到以下错误:

Web部署任务失败.(无法联系远程代理(URL http:// xxxxxxxx/MSDEPLOYAGENTSERVICE).确保在目标计算机上安装并启动了远程代理服务.)确保站点名称,用户名和密码是正确的.如果问题仍未解决,请与您当地或服务器管理员联系.错误详细信息:无法联系远程代理(URL http:// xxxxx/MSDEPLOYAGENTSERVICE).确保在目标计算机上安装并启动了远程代理服务.收到了不受支持的回复.响应标题'MSDeploy.Response'为'V1',但预计为'v1'.远程服务器返回错误:(401)未经授权.在Microsoft.Web.Publishing.targets(3588,5)

kat*_*roh 51

如果将委派配置为"允许管理员绕过规则"并且msdeploy命令成功,那么您将通过WMSvc并让它通过.否则,从响应看来,WMSvc似乎拒绝了你,而你又回到了Web Deloy代理.

将以下reg值设置/添加到WMSvc reg键:

reg add HKLM\Software\Microsoft\WebManagement\Server /v WindowsAuthenticationEnabled /t REG_DWORD /d 1

回收WMSvc:

net stop wmsvc & net start wmsvc

再试一次.如果不成功,您可以发布msdeploy命令行吗?

  • 您还可以从UI配置此选项.如果您转到InetMgr.exe中的"管理服务"并选中"Windows凭据",则该注册表值将设置为1,并且RequiresWindowsCredentials将设置为0.如果要检查"Windows凭据或IIS管理凭据",则两个值都将设置为1. (9认同)

Jon*_*ner 5

作为构建过程的一部分,我们已经部署了一台机器.没有明显的原因,部署停止工作,我们无法再远程访问任何管理共享(C $,ADMIN $等).我们找到了管理共享的修复程序,它也修复了部署问题.

我们按照这篇知识库文章中的步骤重新启用了管理共享(仍然不知道为什么他们突然停止工作).

http://support.microsoft.com/kb/947232

在我们这样做之后,msdeploy突然又开始工作了.我认为msdeploy根本不使用管理共享.我甚至不肯定这两者是相关的,但我想我会把它扔出去,以防它解决了其他人的问题.