C'è un modo per rendere l'agente polkit predefinito per l'utente attualmente connesso?


1

Qualcuno sa come configurare inizialmente polkit-gnome-authentication-agent-1 come predefinito per l'utente corrente quando gestisce una richiesta, o in alternativa se uno degli altri agenti polkit ha questa capacità?


Quando eseguo l'autenticazione per eseguire un'azione polkit con un agente come polkit-gnome-authentication-agent-1, perché ho più utenti nel wheelgruppo mi viene fornito un menu a discesa per selezionare l'utente con cui eseguire l'autenticazione.

Questo è un ulteriore passo irritante, quando nella maggior parte dei casi l'utente che desidero autenticare è l'utente attualmente connesso *. Il mio comportamento preferito è che l'utente attualmente connesso è preselezionato e vengo portato direttamente all'immissione della password, con l'opzione di passare a un altro utente se è quello che voglio.

Sono consapevole che è possibile limitare gli utenti che compaiono nell'elenco tramite le regole polkit, ma la mia comprensione ingenua di tali regole è che cambiano chi è autorizzato ad autenticarsi per determinate azioni e che questo comportamento è invece nel regno del polkit Agente GUI. O sbaglio e che la selezione predefinita è qualcosa che può essere impostato tramite le regole polkit?

Per ribadire , non desidero cambiare quali utenti / gruppi sono autorizzati ad autenticarsi per eseguire azioni polkit, ma solo rendere l'interfaccia utente un po 'più veloce per spostarsi con un numero minimo di tasti e sicuramente nessun roditore.

* Riconosco pienamente che questo potrebbe essere il comportamento più sensato per la maggior parte delle distribuzioni, ma per me è imbarazzante.

Risposte:


1

Il modo in cui sono riuscito a risolvere questo problema è aggiungendo un file personalizzato ai /etc/polkit-1/rules.d/nomi 00-custom.rulescon le seguenti righe, per sovrascrivere 50-default.rules:

polkit.addAdminRule(function(action, subject) {
    if( subject.isInGroup("wheel") ) {
        return ["unix-user:"+subject.user];
    }
    else {
        return [polkit.Result.NO];
    }
});

In questo modo all'utente corrente, se presente nel wheelgruppo, verrà richiesta la password, altrimenti la password di root.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.