以最高权限运行任务会使该任务创build的文件由Administrators组拥有

我正在运行Windows Server 2012 R2。

我有一个每30分钟运行一次的任务。 基本上,它检查接口地址是否已经改变,更新configuration文件,并重新启动应用程序。 由于configuration文件位于C:\ Program Files中,因此进程必须以最高权限运行,否则对该文件的访问将被拒绝。

这工作正常 – 问题是,当重新启动的应用程序创build文件时,默认情况下它们属于pipe理员组。 我使用了一个属于pipe理员组,域pipe理组,超Vpipe理组等不同的帐户,但任何时候我尝试修改该应用程序创build的文件,我得到一个UAC提示。

我必须手动编辑创build的文件/目录的安全性,并授予自己明确的权限 – pipe理员组的权限似乎不被inheritance – 有没有人知道是什么原因造成的?

你说你自己,任务运行最高的权限 – 即使用pipe理员用户。

因此,由该任务创build的每个文件都将被授予相同用户上下文的权限。

你可以做什么来缓解这个问题,要么运行可能创build文件的命令作为另一个(低权限)用户,要么在创build文件后让你的任务设置正确的权限。