锁定 Vista 客户端机器(在域上)上的打印的最佳方法(最干净)是什么?
答案1
嗯...如果您的用户没有管理员权限并且您想禁用所有打印,我想您可以使用组策略强制将“Spooler”服务设置为“已禁用”。
有些应用程序(比如 Microsoft Access)需要获取打印机的设备上下文才能工作(Access 中的“报告”功能的工作原理就是这样的),因此在实践中禁用 Spooler 服务可能不是最好的主意,但是从理论上讲它是可行的。
如果你可以测试你的应用程序并验证它们在 Spooler 服务停止和禁用的情况下是否正常工作,那么这是一个非常轻松设置域范围。
更实际的做法可能是不在客户端计算机上配置任何本地打印机,并设置组策略选项来阻止用户添加打印机。
答案2
我喜欢 Evan 的回答,但我还要补充一点。
如果您组织中的 Windows 服务器上的所有打印机都是“仅限打印服务器的打印机”,那么您可以始终在打印机的安全设置中创建“拒绝”,或者仅将安全性限制为允许打印到打印机的打印机。
这会阻止一切,除了使用 TCP/IP 端口创建本地打印机之外,但就像 Evan 所说的那样,您可以使用 GPO 或将其作为管理员删除来完成这部分工作。
答案3
你可以通过确保用户这样做来实现 98% 的目标不是具有本地管理员权限,没有连接本地打印机,也没有他们有权限的基于服务器的网络打印机。
如果你无法通过本地管理员限制,请停止后台处理程序服务(如埃文建议)可能会起作用。还有一个组策略设置可以阻止用户安装打印机驱动程序。但拥有本地管理员权限并知道自己在做什么的人最终将能够打印一些内容。