我在我们的域内构建服务器(它需要是因为它还与域中的其他框进行通信),以及DMZ中的网络服务器。
作为构建脚本的一部分,我想使用Nant复制任务将网站部署到DMZ中的Web服务器。问题是,从构建服务器上的系统帐户下运行的TeamCity调用Nant,并且我无法找到给构建服务器系统帐户访问DMZ webserver目录的权限。 (无论如何,这可能不是一个好主意。)
有没有告诉Nant在不同的Windows用户下运行特定任务,还是有另一个解决我问题的方法?
编辑:我正在运行的另一个限制是我无法创建新的域帐户(嗯,至少在没有通过审批流程的情况下)。我可以创建本地计算机帐户,但在这种情况下,似乎runas不会在DMZ中运行。
答案 0 :(得分:2)
一些选项可能是:
<scp
>提供的NAntContrib(安全副本)任务。<exec
>任务调用ftp程序,将文件放在DMZ上。希望这会提供一些帮助。祝你好运!
答案 1 :(得分:0)
您可以使用powershell远程处理从构建服务器中提取版本。与使用像文件副本一样的推送版本相比,服务器不易受到攻击。
我正在使用自定义应用程序执行此操作,该应用程序登录到teamcity并下载工件,然后在本地使用PowerShell进行部署。