gpt4 book ai didi

windows-services - 使用 MsDeploy 通过 preSync 命令部署 Windows 服务

转载 作者:行者123 更新时间:2023-12-04 03:34:18 26 4
gpt4 key购买 nike

是否有人成功使用 MsDeploy 通过 preSync runCommand 部署 Windows 服务?我已经使用管理员帐户使其工作,但在我的一生中不能让它在标准用户帐户上工作。不幸的是,我不能使用集成身份验证(我们正在部署到外部机器),并且想到我们的管理员密码以明文形式保存在我们的构建服务器上的日志中并不完全让我感觉太舒服。就此而言,任何用户凭据也没有 - 但我看不到解决方法。

我正在使用的命令是这样的:

"tools/deploy/msdeploy.exe" -verb:sync 
-preSync:runCommand="tools\Deploy\PreSyncCommand.cmd",waitInterval=30000
-source:dirPath="C:\BuiltSourcePath"
-dest:computerName=https://server:8172/msdeploy.axd?site=dummysitename,userName=service-deploy,password=service-deploy-pass,authType=basic,dirPath="C:\DeployPath\"
-allowUntrusted

在 IIS 中为虚拟站点设置规则以允许对服务部署 Windows 帐户进行身份验证,具有 contentPath 和 runCommand 权限(目前设置为 C:\,因为尚不完全清楚是否需要将其设置为临时MsDeploy 流向的路径,还是部署路径?)。 service-deploy 帐户还可以完全控制目标目录。我得到以下信息:
Performing '-preSync'...
Info: Using ID '7a7d34a1-b5d8-49f1-960a-31c9cf825868' for connections to the remote server.
Info: Using ID '4d0b910c-aca4-4640-84bd-3597d22d99d1' for connections to the remote server.
Info: Updating runCommand (C:\TeamCity\buildAgent\work\aec989676b349656\tools\De
ploy\PreSyncCommand.cmd).
Warning: Access is denied.
Warning: The process 'C:\Windows\system32\cmd.exe' (command line '/c "C:\Windows
\ServiceProfiles\LocalService\AppData\Local\Temp\giz2t0kb.0ay.cmd"') exited with
code '0x1'.

即使 PreSyncCommand.cmd 的内容为空,也会发生这种情况。如果我传入管理员凭据,相同的命令运行良好。我尝试使用 ProcessMonitor 检查是否有任何内容被拒绝访问但看不到任何内容 - 所以我猜它仍然是 MsDeploy 身份验证规则。 WmSvc.log 中没有任何内容(启用调试),事件日志中也没有。

有任何想法吗?谢谢!

最佳答案

由于您通过 WmSvc 使用 Web 部署,因此您需要在目标服务器上设置适当的委派规则:

内IIS 管理器 ,打开“管理服务委托(delegate)”功能。添加至少指定 runCommand 的新规则提供者。在运行方式部分中,选择 Specific User并为该计算机上的本地管理员帐户提供凭据。这是执行 runCommand 脚本的身份。最后,需要将您为目标 dirPath 提供程序指定的用户添加到委派规则中。

这允许您使用非特权帐户调用部署,并在目标计算机上以管理凭据执行。

有关 IIS 功能委托(delegate)的更多信息:http://learn.iis.net/page.aspx/516/configure-the-web-deployment-handler/

关于windows-services - 使用 MsDeploy 通过 preSync 命令部署 Windows 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5881705/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com