Hintergrund:
Wenn ich in einem Terminal einen Befehl mit Sudo starte, wird einmal das PW abgefragt. Hinterher kann im selben Terminal - Reiter weiter mit Sudo arbeiten, ohne dass ein PW abgefragt wird. Ein zweiter Reiter im selben Terminal fragt das PW erneut ab. Nach dem Schließen des Terminals muss das PW erneut eingegeben werden.
Das wäre an sich nicht so tragisch, da ich Sudo im Terminal nicht benutze.
Problematisch wird es aber z.B. in Thunar, wenn ich mit einer "Benutzerdefinierten Aktion" (gksu mousepad %N) eine Datei als Root bearbeiten will. Im Anschluss kann ich beliebig oft Dateien als Root bearbeiten. Da hilft auch nicht das Abwürgen des Prozesses samt Thunar-Daemon.
ich habe quasi für die Sitzung das andauernde Recht, aus Thunar heraus beliebig viele Dateien als Root ohne weitere PW- Abfrage zu bearbeiten.
Die ominösen 15 Min aus Ubuntu habe ich nicht gestoppt, ist auch in der /etc/sudoers nicht vorhanden.
Nicht gerade ein Sicherheits- Feature
Mit dem PolicyKit lässt sich das aber Umgehen (hoffe ich)
In /usr/share/polkit-1/actions/ sind schon eine Menge Policies vorhanden, leider aber keine für Mousepad.
ich hab dann von http://forums.debian.net/viewtopic.php?f=16&t=73497 mir
die Vorlage für Mousepad herausgenommen und als /usr/share/polkit-1/actions/org.freedesktop.mousepad.policy gespeichert
Code: Alles auswählen
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE policyconfig PUBLIC
"-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
"http://www.freedesktop.org/standards/PolicyKit/1/policyconfig.dtd">
<policyconfig>
<action id="org.freedesktop.policykit.pkexec.run-mousepad">
<description>Run Mousepad</description>
<message>Authentication is required to run Mousepad as Root</message>
<defaults>
<allow_any>no</allow_any>
<allow_inactive>no</allow_inactive>
<allow_active>auth_admin_keep</allow_active>
</defaults>
<annotate key="org.freedesktop.policykit.exec.path">/usr/bin/mousepad</annotate>
<annotate key="org.freedesktop.policykit.exec.allow_gui">TRUE</annotate>
</action>
</policyconfig>
Code: Alles auswählen
pkexec mousepad /pfad zur datei
Code: Alles auswählen
pkexec mousepad %N
Der Befehl in Thunar (Ordner als Root öffnen)
Code: Alles auswählen
pkexec thunar %f
Ich habe dann die
/usr/share/polkit-1/actions/org.freedesktop.mousepad.policy nach dem Vorbild von Thunar geändert:
Anscheinend ist es ziemlich egal , was da drin steht bis auf sehr wenige Zeilen (allow und action)
Bei beiden Policies kann ich kein unterschiedliches Verhalten feststellen.
Geänderte Datei:
Code: Alles auswählen
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE policyconfig PUBLIC
"-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
"http://www.freedesktop.org/standards/PolicyKit/1/policyconfig.dtd">
<policyconfig>
<action id="org.xfce.mousepad">
<description>Run Mousepad</description>
<message>Authentication is required to run Mousepad as Root</message>
<defaults>
<allow_any>no</allow_any>
<allow_inactive>auth_admin</allow_inactive>
<allow_active>auth_admin</allow_active>
</defaults>
<annotate key="org.freedesktop.policykit.exec.path">/usr/bin/mousepad</annotate>
<annotate key="org.freedesktop.policykit.exec.allow_gui">TRUE</annotate>
</action>
</policyconfig>
Meine Frage (neben vielen anderen, was die Syntax betrifft) :
Was ist falsch an der Policy - oder dem benutzerdefiniertem Befehl - das ich aus Thunar heraus nur ein leeres Mousepad Fenster bekomme ?