我想知道这是否可以通过组策略实现。
是否可以定义一个允许的程序列表,并在用户注销/打开计算机时自动卸载其余程序?
有一个选项可以定义策略“当软件超出范围时卸载”,但这仅适用于软件最初通过全局策略安装的情况,而很多不需要的软件并非如此。
Windows Server 2003、Active Directory。Windows XP 和 Windows 7 客户端。
答案1
该产品没有内置功能可以实现您想要的功能。
一个现实的方案是识别“不需要的”软件并通过组策略启动脚本编写卸载脚本。您可以通过软件留下的某些“标记”(其主 .EXE 的存在、HKLM 中“卸载”键中的注册表项等)识别软件的存在并执行卸载。
卸载任意程序都会有问题。通常情况下,让静默卸载工作已经够困难了,更不用说尝试执行随机卸载程序并希望它们“正常工作”。我认为这只是白日梦。
假设您的用户没有“管理员”权限(最佳做法),您不应将软件永久安装到计算机的特定区域。(像 Google Chrome 这样的软件,安装在用户配置文件中,始终是可能的。)
软件限制策略/AppLocker 也可能是可行的选择。您可以将已知需要的软件列入“白名单”,这样所有其他软件都无法执行。这不是一个容易实现的配置,但我发现该功能在用户运行一组非常受限的程序的环境中取得了一些成功。