没有用户的本地pipe理员权限,GP1 for PS1login脚本不起作用

我有一个PowerShell .PS1脚本,我试图通过组策略通过login脚本来申请。 这里是.PS1脚本(非常简单,只是将用户添加到RD用户组):

net localgroup "Remote Desktop Users" "$env:USERDOMAIN\$env:USERNAME" /add 

根据RSoP.mscGPresult ,GPO正在得到应用,没有问题。 我可以手动运行PS1,它可以工作(尽pipe作为pipe理员和Set-ExecutionPolicy Unrestricted )。 但是,该脚本无法正常工作,因为用户login永远不会被添加到“远程桌面用户”组中。

RSoP.msc “最后执行”的时候,这个脚本是空白的。 我想查看事件查看器,以更好地了解脚本为什么不起作用,但不知道要查找什么。

编辑:显然,login脚本必须作为login用户运行,所以它inheritance了用户所拥有的任何权限(或者说,没有)。 我将尝试运行脚本计算机端,看看它是否会工作,没有最终用户有本地pipe理员权限,因为它将使用系统帐户。

我能够将它作为通过组策略部署的计划任务运行,使用System作为帐户来运行计划任务。

Computer Configuration > Preferences > Control Panel Settings > Scheduled Tasks ,selectScheduled Task (Windows Vista and Later)任务types,创build一个新的计划任务:

任务类型

任务位置

将该帐户设置为NT AUTHORITY/System ,并设置为run with highest privileges任务特权

将其设置为at log on any user at log on触发: ![任务触发器

select“在actionStart a program ”,将Powershell.exe设置为程序/脚本,并将脚本path设置为参数: 任务行动

保持所有其他选项卡不变。

当用户login时,他们应该看到一个PowerShell窗口显示,并通过检查lusrmgr.msc,你应该看到指定的组中的用户: 用户添加到组中