如何防止用户添加或删除打印机?
答案1
这可以使用 PolKit 策略来实现。有一些与打印机相关的 Polkit 操作:
$ pkaction | grep -i print
org.opensuse.cupspkhelper.mechanism.printer-enable
org.opensuse.cupspkhelper.mechanism.printer-local-edit
org.opensuse.cupspkhelper.mechanism.printer-remote-edit
org.opensuse.cupspkhelper.mechanism.printer-set-default
org.opensuse.cupspkhelper.mechanism.printeraddremove
最后一个似乎是最相关的。创建一个名为.pkla
的文件/etc/polkit-1/localauthority/50-local.d
,例如disable-printer-change.pkla
,包含:
[Printer addition, removal]
Identity=unix-user:geraldo
Action=org.opensuse.cupspkhelper.mechanism.printeraddremove
ResultAny=no
ResultInactive=no
ResultActive=no
替换geraldo
为适当的用户名。支持通配符,也可以使用groups
using unix-group:<group-name>
。