如何设置组策略以使用 Powershell 为 Active Directory 中的每个用户设置登录脚本?

How to setup a group policy to set a logon script on every user in Active Directory using Powershell?

我知道如何设置组策略以使用 GUI 向每个用户添加登录脚本,但我想知道如何使用 Powershell 命令(或者可能使用 python)来完成此操作。

目前,通过 powershell 设置 GPO 设置的唯一真正方法要求您知道要更改的注册表项(所有 GPO 设置都解析为注册表项),但是请注意,像这样完成的设置不会显示在组策略 gui 工具中的漂亮描述中:

Get-GPO -Name 'Logon Scripts' | Set-GPRegistryValue -Context User -Key 'HKEY_CURRENT_USER\path\to\key' -Value 'Foo.bat'

通常,更好的方法是设置 AD 用户的 ScriptPath 属性:

Get-ADUser $user | Set-ADUser -ScriptPath 'Foo.bat'