...或者,我需要授予某人什么权限,以便他们可以查看(但不能更改)Additional Drivers
从 Windows 打印服务器共享的网络打印机?(Server 2008 R2、Server 2012、Server 2012 R2)
问题是我们需要清点打印服务器上的所有打印机,特别是验证它们是否安装了 32 位和 64 位驱动程序。当然,为了让事情变得困难,我们不想让清点人员拥有管理打印机或安装驱动程序的权限。
因此,这些库存人员看到的是Additional Drivers
灰色的按钮:
他们只需要查看“附加驱动程序”对话框,而无权编辑它。
当然,我们可以通过打印管理插件查看打印服务器上安装的所有驱动程序,但这似乎无法将安装的驱动程序与它们关联的打印机进行匹配。(肯定有人认为该功能太有用了。)
我也愿意使用命令行方法,但我找不到可以列出与给定打印机关联的附加驱动程序的方法。Get-WMIObject -Class Win32_Printer -Computer [printserver name]
一开始看起来很有希望,直到我读到该类的可用属性/特性,其中似乎包含驱动程序名称作为唯一可用的驱动程序相关属性。
用于打印管理的 PowerShell cmdlet 似乎也无法满足我的需要,并且仅适用于 Server 2012 R2 和 Windows 8.1(叹)。
同时,我还看到用户可以在不更改打印机上附加驱动程序的情况下查看它们,所以我很确定这是可能的......不过,查看打印机的安全选项卡和权限选项似乎并没有对此事提供任何说明。
让我思考的是,作为受限用户,如何显示该信息,或者我需要分配什么权限才能允许用户查看(但不能更改)打印机的安装驱动程序。
答案1
“附加驱动程序”列表是通过查询子键HKLM\System\CurrentControlSet\Control\Print\Environments
并汇总匹配的名称而构建的。没有按每台打印机安装“附加驱动程序”。
假设您有两台打印机,“会计打印机”和“清洁打印机”,它们使用 x64 架构的驱动程序“Whiz Bang Jet PCL 8”。使用“附加驱动程序”按钮为“清洁打印机”安装 Itanium 驱动程序后,您会发现“会计打印机”也显示已安装 Itanium 架构驱动程序。
我只需将与打印机相关的注册表远程转储到中心位置并对其进行解析,即可清点机器上的打印机和驱动程序。
答案2
这些是我们打印机操作员(我是其中的一员)的权限。我们可以查看所有打印机、驱动程序并添加打印机,但不能添加驱动程序。新服务器操作系统中的规则发生了变化,您必须是本地服务器管理员才能安装驱动程序。很奇怪,因为 MS 正在吹捧“基于角色的管理”,但无论如何。
另外,我使用打印机 mmc 管理单元进行管理。