Fedora 33 polkit 忽略 org.freedesktop.login1.reboot 规则

Fedora 33 polkit 忽略 org.freedesktop.login1.reboot 规则

我设置了以下 Polkit 规则来阻止用户使用 Gnome 重新启动我的 Fedora 33 机器:

polkit.addRule(function(action, subject) {

    if ( ( action.id == "org.freedesktop.login1.reboot" ) ||
         ( action.id == "org.freedesktop.login1.reboot-ignore-inhibit" ) ||
         ( action.id == "org.freedesktop.login1.reboot-multiple-sessions" ) ||
         ( action.id == "org.freedesktop.login1.set-reboot-parameter" ) ||
         ( action.id == "org.freedesktop.login1.set-reboot-to-boot-loader-entry " ) ||
         ( action.id == "org.freedesktop.login1.set-reboot-to-boot-loader-menu" ) ||
         ( action.id == "org.freedesktop.login1.set-reboot-to-firmware-setup" ) ) {

        return polkit.Result.AUTH_ADMIN;

    }
});

但有些事情并没有按预期进行,因为用户仍然可以重新启动机器。有人知道发生了什么吗?

编辑:我已尝试“*.power-off”操作,但它们也被忽略了......

编辑2:“*.suspend”按预期工作,但即使我尝试使用 pkcheck 触发这些规则,“*.power-off”和“*.reboot”似乎都不起作用。

相关内容