Zasady PolicyKit nigdy nie wchodzą w życie


12

Próbuję napisać nowy .rulesplik dla PolicyKit. Moja próba testowa (w katalogu /etc/polkit-1/rules.d/) wygląda następująco:

polkit.addRule(function(action, subject) {
    polkit.spawn(["rm","/home/gabriel/test"]);
    if (action.id == "org.freedesktop.policykit.exec") {
        polkit.log("action=" + action);
        polkit.log("subject=" + subject);
    }
    return polkit.Result.NOT_HANDLED;
});

Ale o ile wiem, ten kod nigdy nie jest uruchamiany. testPlik nadal istnieje i nie ma wyjścia dziennika po uruchomieniu coś$ pkexec -u otheruser bash

(Próbowałem oznaczyć .rulespliki jako pliki wykonywalne).

Odpowiedzi:


15

Jeśli korzystasz z systemu Ubuntu 19.04 (lub nowszego), nadal używasz starej wersji PolKit, w której nie ma plików .rules, a jedynie pliki .pkla i .conf.

W wierszu polecenia wykonaj:

pkaction --version

Jeśli mówi <0,106, możesz użyć tylko starej składni.

Możesz utworzyć plik .pkla w /etc/polkit-1/localauthority/


1
Ubuntu 15.10 jest nadal w starej wersji. pkaction --versiondajepkaction version 0.105
Roger Binns

5
Ubuntu 18.04 nadal nosi 0,105 !!!! O mój!!!!
Osqui

1
I nawet żadna wersja 0.106+ nie jest dostępna w repozytoriach dla Ubuntu! O MÓJ BOŻE!
Suncatcher

2
ubuntu 19.04 pkaction version 0.105. Nowe pliki reguł są zapisywane w JavaScript nieobsługiwane.
Denis Denisov,

0

Aby działać zgodnie z oczekiwaniami, musisz umieścić własne .rulespliki w:

/usr/share/polkit-1/rules.d

Pamiętaj, że powinno to również rozwiązać to pytanie .


Przeniesienie pliku tam nic nie zmieniło. Ponadto, zgodnie z dokumentacją polkit i wiki Arch , /etc/polkit-1/rules.dnależy użyć do konfiguracji użytkownika. Nie jestem więc pewien, co robi zmiana katalogów.
Keidax

@Keidax: jak nazywa się twój .rulesplik?
Sylvain Pineau

Obecnie/usr/share/polkit-1/rules.d/10-udisks-personal.rules
Keidax,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.