Klicklos

Auch wenn die Bearbeitung grundsätzlich mit jedem Texteditor möglich wäre, sollten Sie die Konfigurationsdaten von Policykit nur mit den dafür vorgesehenen Werkzeugen Polkit-auth und Polkit-action editieren.

Jeder lokal angemeldete Benutzer darf in der Grundeinstellung nach der einmaligen Eingabe seines Passworts die Zeitzone wechseln. Als Anwendungsbeispiel soll die Berechtigung so geändert werden, dass er das Passwort bei jeder Änderung eingeben muss. Dazu führen Sie im Terminal das folgende Kommando aus:

$ polkit-auth --obtain org.freed↩
esktop.policykit.modify-defaults

Da nur der Administrator Default-Einstellungen ändern darf, fragt das System für die Freigabe dieser Aktion das Administratorkennwort ab. Bei erfolgreicher Authentisierung besitzt die aktuelle Bash-Sitzung das Recht, Änderungen an der Policykit-Konfiguration vorzunehmen. Mit dem folgenden Befehl setzen Sie die Standardeinstellung der lokalen Konsole auf "Authentisieren":

$ polkit-action --set-default-ac↩
tive org.gnome.clockapplet.mecha↩
nism.settimezone auth_self

Das Ergebnis überprüfen Sie entweder im grafischen Konfigurationsmenü oder im Terminal. Ob die Dateien nach einem solchen Eingriff noch fehlerlos sind, zeigt die Eingabe von »polkit-policy-file-validate /usr/share/Policykit/policy/Konfigurationsobjekt.policy« im Terminal. Eine Nachricht über den Systembus (D-Bus) an das Clock-Applet versucht, die Zeitzone zu wechseln und scheitert zunächst an der Autorisierung (Listing 1)

Listing 1

$ dbus-send --system --dest=org.gnome.ClockApplet.Mechanism / org.gnome.ClockApplet.Mechanism.SetTimezone string:/usr/share/zoneinfo/Europe/London
Error org.gnome.ClockApplet.Mechanism.NotPrivileged: org.clockapplet.mechanism.settimezone auth_self <-- (action, result)

Die Autorisierung setzen Sie, wie bereits bekannt, mit »polkit-auth --obtain org.gnome.clockapplet.mechanism.settimezone« . Hier wird jetzt das Passwort abgefragt und für die aktuelle Bash-Sitzung hinterlegt. Senden Sie nun die Nachricht erneut an das Clock-Applet, klappt die Umstellung der Zeitzone.

Überzeugungsarbeit

Da Anwendungen die Kommunikation über den Systembus oder über Libpolkit unterstützen müssen, greifen viele Regeln des Policykits noch ins Leere. Dennoch bringt das Verwenden von Policykit bereits viele Vorteile. Das betrifft nicht nur die Sicherheit, auch die Stabilität des Systems lässt sich durch ein einheitliches Interface erhöhen. Die Standardkonfiguration erscheint bereits recht gut gelungen, da sie nur dann Passwörter abfragt, wenn das auch notwendig ist.

Das Nutzen der Kommandozeilentools gestaltet sich allerdings recht mühsam, wenn man über den Systembus kommunizieren muss: Man bekommt die Informationen zu den einzelnen Diensten und Nachrichten nicht gerade auf dem Präsentierteller serviert. Hier erweist sich der Einsatz von Sudo als wesentlich einfacher und auch flexibler.

Infos

  1. Policykit-Referenzhandbuch (englisch): http://hal.freedesktop.org/docs/Policykit/
  2. Die Freedesktop.org-Plattform: http://www.freedesktop.org

Der Autor

Marcus Nasarek beschäftigt sich schwerpunktmäßig mit Sicherheitsthemen – und zwar am liebsten vom sicheren Ufer einer Linux-Konsole aus.

comments powered by Disqus
Mehr zum Thema

Workshop: Open Source-Tipp

Früher war alles einfacher. Auf Linux- und Unix-Systemen gab es nur Root und den Rest der Welt. Root durfte alles, die anderen mehr oder weniger nichts. Etwas feinere Klassenunterschiede gibt es mit dem Polkit.

Artikel der Woche

Eigene Registry für Docker-Images

Wer selber Docker-Images herstellt, braucht auch eine eigene Registry. Diese gibt es ebenfalls als Docker-Image, aber nur mit eingeschränkter Funktionalität. Mit einem Auth-Server wird daraus ein brauchbares Repository für Images. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Google+

Ausgabe /2019