![允许域用户在 IIS 7.5 上使用 mswebdeploy 发布网站](https://linux22.com/image/542247/%E5%85%81%E8%AE%B8%E5%9F%9F%E7%94%A8%E6%88%B7%E5%9C%A8%20IIS%207.5%20%E4%B8%8A%E4%BD%BF%E7%94%A8%20mswebdeploy%20%E5%8F%91%E5%B8%83%E7%BD%91%E7%AB%99.png)
我正在尝试配置 IIS 7.5 服务器以允许域用户帐户进行远程部署。
如果我创建具有管理员权限的本地帐户或使用具有管理员权限的域帐户,我可以实现此目的,但对于常规域帐户,我无法弄清楚需要设置什么。
我目前已采取的步骤如下:
- 在域控制器上创建用户帐户“webdeploy”
- 在默认网站的“IIS 管理器权限”下,我已通过“允许用户...”向导允许域用户访问该网站。
- 在服务器级别的“管理服务”下,我已启用仅来自所有 IP 地址的 Windows 凭据的远程连接。
- 在“管理服务委派”下,我创建了两个规则“createApp”和“contentPath,iisApp”,并向每个规则添加了“DOMAIN\webdeploy”用户。
但是,当尝试使用 webdeploy 帐户凭据运行 msdeploy 时,我收到“401 未授权”消息,并在事件日志中看到以下内容:
IISWMSVC_AUTHORIZATION_SERVER_NOT_ALLOWED
Only Windows Administrators are allowed to connect using a server connection. Other users should use the 'Connect To Site or Application' task to be able to connect.
Process:WMSvc
User=DOMAIN\webdeploy
这是否意味着我的构建服务器需要存储域管理员的凭据才能将 Web 应用程序推送到 Web 服务器?
答案1
您需要使用站点参数指定完整的 Web 管理服务 URL。例如,如果您之前使用:
msdeploy ... -dest:auto,wmsvc=target
那么你可以改用这个:
msdeploy ... -dest:auto,wmsvc=https://target:8172/msdeploy.axd?site=yourSiteName
答案2
请在您想要使用 WebDeployment 部署应用程序的机器上的本地管理员组中添加用户。