【问题标题】:WMSVC works, Web Deploy Agent throws 401WMSVC 工作,Web 部署代理抛出 401
【发布时间】:2011-07-07 09:22:41
【问题描述】:

我正在尝试让 msdeploy 从命令行运行,并且可以使用本地管理员帐户和 IIS 管理器用户帐户直接成功测试 WMSVC(使用 HTTPS,端口 8172)。这是命令行:

> msdeploy -verb:dump -source:appHostConfig=MyWebsite,wmsvc=myserver,username=iisuser,password=password -allowuntrusted

因此,wmsvc= 指示 msdeploy 使用 https://myserver:8172/msdeploy.axd 。但是,由于目标主机防火墙不允许端口 8172,我真的很想通过端口 80 使用 Web 部署代理服务。但是,当我将 wmsvc 更改为 computerName 时,它​​会响应 401:

> msdeploy -verb:dump -source:appHostConfig=MyWebsite,computername=myserver,username=myserver\localadmin,password=password

其中 computername= 指示 msdeploy 使用 http://myserver/MSDEPLOYAGENTSERVICE 。在浏览器中,该 URL 提示输入用户名/密码,并返回一个空白页面(如果已通过身份验证),因此它似乎正在正确侦听和验证。此外,我还为 NETWORK SERVICE 添加了站点根目录的完全权限。

使用 Web 部署代理服务与标准 WMSVC 有什么区别?提前致谢!

【问题讨论】:

  • 我应该补充一点,即使在为 401s 启用失败请求跟踪后,我在任何日志中都没有命中代理,但直接点击 wmsvc 时我看到了所有内容。
  • WMSvc 是较新的 IIS 7 方法,它涉及委派权限,以便尝试部署的用户无需在远程计算机上拥有管理员权限(Web 部署代理需要此权限)。

标签: iis webdeploy


【解决方案1】:

据我目前发现,区别是:

  • WMSVC 与 IIS 紧密绑定,而远程代理似乎没有

  • WMSVC 用户可以是 windows 或 IIS 用户,您可以通过 IIS 管理器委派权限,以便他们可以在其他安全帐户下运行某些任务等。您还可以控制允许他们在下面执行操作的路径.

  • 远程代理用户只能在机器上他们自己帐户的上下文中执行任务:您可以通过 Windows 安全机制直接控制他们可以执行的操作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-05-18
    • 2016-12-06
    • 1970-01-01
    • 1970-01-01
    • 2021-12-11
    • 2022-10-15
    • 2013-10-24
    相关资源
    最近更新 更多