禁用服务管理器图形界面并限制命令行工具及服务ACL:启用“禁止使用服务”策略移除services.msc入口;通过“不允许运行指定应用程序”封禁sc.exe等工具;在计算机配置中修改关键服务安全描述符,移除普通用户读取权限。
限制域用户查看系统服务,核心是控制其对“服务管理器”(services.msc)的访问权限,以及阻止其通过命令行或api查询服务状态。组策略本身不直接提供“禁止查看服务列表”的开关,但可通过组合策略实现等效效果。
禁用服务管理器图形界面
这是最直接的拦截方式,让普通用户无法打开服务管理窗口:
- 打开组策略管理控制台(gpmc.msc),编辑目标OU关联的GPO
- 导航至:用户配置 → 管理模板 → 系统 → 管理工具
- 启用策略:“禁止使用服务”(对应策略名:Disable Services)
- 该策略会从“计算机管理”和“运行”中移除services.msc入口,并拦截双击.msc文件的行为
限制服务相关命令行工具
仅禁用GUI仍可能被sc.exe、Get-Service等绕过,需同步封禁关键工具:
- 在同个GPO中,进入:用户配置 → 管理模板 → 系统 → 可执行文件的限制
- 启用:“不允许运行指定的Windows应用程序”
- 点击“显示”,添加以下程序名(一行一个):
sc.exe
powershell.exe(若需更严格,可配合AppLocker细化PowerShell脚本策略)
cmd.exe(慎用,影响面广;建议优先限制sc.exe)
收紧服务对象的安全描述符
即使用户能运行工具,也可使其查询失败——通过修改服务自身的ACL:
- 编辑GPO,路径:计算机配置 → 策略 → Windows设置 → 安全设置 → 系统服务
- 双击任一服务(如 Spooler 或 Dhcp),勾选“定义此策略设置”
- 点击“编辑安全性”,移除“Authenticated Users”或“Users”组的读取权限(保留SYSTEM、Administrators)
- 重复操作适用于关键服务;若需全局限制,可批量导出/导入服务安全模板
补充验证与注意事项
策略生效后需确认实际效果:
- 客户端执行 gpupdate /force,并重新登录(用户策略需新会话)
- 用标准域用户测试:
运行 services.msc → 应提示“此操作已被管理员禁止”
运行 sc query winmgmt → 应返回“拒绝访问”或“找不到服务”
在PowerShell中执行 Get-Service → 应报错或仅返回极少数可见服务 - 注意:本地管理员账户不受用户策略限制,确保GPO仅链接到普通用户OU,避免继承覆盖









