由于某种原因,我们 wifi 网络上的多台笔记本电脑经常无法打印到连接到网络服务器的设备。重新启动每台笔记本电脑上的打印后台处理程序即可解决此问题。但是,重新启动 Windows 打印后台处理程序服务(通过services.msc
或 通过net start/stop
命令)需要管理权限。
有没有办法允许标准用户重新启动其本地打印后台处理程序服务而无需提升权限或管理权限?例如,通过策略更改?
答案1
我最终使用了方法 3如何授予用户在 Windows 2000 中管理服务的权限。
- 下载并安装子程序ACL
- 跑步
"C:\Program Files\Windows Resource Kits\Tools\subinacl" /service Spooler /grant=<username>=TO
SubInACL
适用于 Windows 7。
grantT
参数是用于start service
访问,O
参数是stop service
访问。
现在<username>
可以:
- 运行
sc stop Spooler
并sc start Spooler
- 运行
net stop "Print Spooler"
并net start "Print Spooler"
- 使用物品
Restart
上的按钮Print Spooler
services.msc
答案2
尝试:SetACL:Windows ACL 管理 http://sourceforge.net/projects/setacl/
SetACL + GUI = SetACL Studio http://helgeklein.com/setacl-studio/
答案3
一篇旧博客文章有正确的解决方案(查看“允许所有经过身份验证的用户重新启动服务”)。在提升的命令提示符下运行以下命令:
sc sdset Spooler "D:AR(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA) (A;;LCRPWP;;;AU)(A;;CCLCSWLOCRRC;;;IU)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;SY) S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)"
将其替换Spooler
为用户需要重新启动的任何服务的名称。按原样使用该行的其余部分。我不知道这是什么意思,但它有效。:-)
几秒钟后,您将看到以下响应:
[SC] SetServiceObjectSecurity SUCCESS
现在所有经过身份验证的用户都可以重新启动该服务。
答案4
首先检查并记录现有的默认权限。
在提升的命令提示符下,键入:
sc.exe sdshow spooler
结果:
D:(A;;CCLCSWLOCRRC;;;AU)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWRPWPDTLOCRRC;;;SY)S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)
读取输出的关键:
D: — 自主访问控制列表 (DACL)
S: — 系统访问控制列表 (SACL)
第一个字母表示;允许(A)或拒绝(D)
下一组符号是可分配的权限:
CC — SERVICE_QUERY_CONFIG(请求服务设置)
LC — SERVICE_QUERY_STATUS(服务状态轮询)
SW — SERVICE_ENUMERATE_DEPENDENTS
LO — SERVICE_INTERROGATE
CR — SERVICE_USER_DEFINED_CONTROL
RC — READ_CONTROL
RP — SERVICE_START
WP — SERVICE_STOP
DT — SERVICE_PAUSE_CONTINUE
受托人名单很长,但我们正在寻找包含在第一组括号中的经过身份验证的用户 (AU)。
为经过身份验证的用户(AU)添加 RP、WP 和 DT 权限应该可以解决问题:
(A;;CCLCSWLOCRRC)RPWPDT;;;澳大利亚)
要设置这些权限,再次从提升的命令提示符开始:
sc.exe sdset spooler "D:(A;;CCLCSWLOCRRCRPWPDT;;;AU)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWRPWPDTLOCRRC;;;SY)S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)"
要将权限恢复为默认值,有效地删除经过身份验证的用户启动/停止/暂停/恢复后台处理程序服务的能力:
sc.exe sdset spooler "D:(A;;CCLCSWLOCRRC;;;AU)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWRPWPDTLOCRRC;;;SY)S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)"
华盛顿大学的 IT Connect 功不可没https://itconnect.uw.edu/wares/msinf/other-help/understanding-sddl-syntax/