我的域上有一个存储在Active Directory服务器上的脚本。域上的每台机器都有一个任务,当被触发时,调用该脚本来运行。
从AD服务器运行任务有效。从另一台计算机运行任务不起作用。但是,在远程计算机上手动运行从cmd触发的命令有效吗?
任何人都可以对此有所启发。基本上我称它为这样,以便触发器设置为......
操作:PowerShell.exe
参数:-noprofile -ExecutionPolicy Bypass -File“\\<> NameOfADServer<> \ C $ \ Tasks \ script.ps1”“Argument 1”“Argument 2”
答案 0 :(得分:2)
以SYSTEM身份运行可能是你的问题 - 它无法在PC运行之外进行任何访问。
手动运行时,您将拥有访问权限。
答案 1 :(得分:2)
这里有几个问题。
\\<servername>\C$
)来共享脚本。只有具有管理员访问权限的用户才能访问管理共享。管理共享受到设计的严格限制,您无法修改它们的访问权限。我的猜测是,手动运行该脚本是因为当您这样做时,它会使用当前用户的凭据进行网络访问,但请不要引用我的话。
变化最小的最简单的解决方案是:
\\<servername>\<sharename>\script.ps1
。这几乎肯定不是实现您实际尝试的最佳方法,但这可能是使用SYSTEM帐户在网络共享上运行脚本的计划任务的最佳方法。