AA_tuersteher_PO-21680-Fotolia_GordonBussiek.jpg

© Gordon Bussiek, Fotolia

Türsteher

Admin-Rechte gezielt vergeben mit PolicyKit

07.06.2010
Wer unter Linux vor verschlossenen Türen steht, greift meist mit su oder sudo zu Root-Rechten. Wesentlich feinfühliger und flexibler lassen sich die Rechte mit PolicyKit erteilen.

Unter Linux sind die Machtverhältnisse klar geregelt: Ausschließlich der allmächtige Nutzer root darf die Systemeinstellungen verstellen, normale Anwender bleiben auf ihrem Desktop eingesperrt. Im Alltag erweist sich diese Zweiteilung oft als hinderlich, beispielsweise wenn man nur mal eben einen USB-Stick einbinden oder die falsch tickende Systemuhr stellen möchte. Teilen sich mehrere Benutzer einen PC, muss dann sogar jedes Mal der menschliche root anrücken.

Abhilfe verspricht das noch relativ junge Projekt PolicyKit [1]. Es bietet eine unabhängige Rechteverwaltung, die ganz ähnlich wie die Telefonauskunft funktioniert: Linux-Programme können dort anrufen und nachfragen, ob ein Benutzer eine bestimmte Systemfunktion ausführen darf.

Fräulein vom Amt

Genau das passiert beispielsweise auch unter Ubuntu, wenn Sie die Systemuhr stellen möchten. Bevor das ziemlich zugeknöpfte Fenster hinter System | Systemverwaltung | Datum und Uhrzeit irgendwelche Änderungen zulässt, ist zunächst ein Klick auf das Schloss-Symbol fällig. Damit fragen die Zeit- und Datumseinstellungen bei PolicyKit an, ob Sie überhaupt berechtigt sind, die Uhr einzustellen.

PolicyKit beantwortet diese Frage mit einem Blick in sein Regelwerk. Dort steht geschrieben, dass Sie die Zeit nur dann ändern dürfen, wenn Sie zur Gruppe der Administratoren gehören und sich mit Ihrem Passwort ausweisen können. PolicyKit bittet daraufhin den Desktopmanager Gnome, das Passwort abzufragen. Der leistet umgehend Folge und öffnet das Fenster aus Abbildung 1. Sobald PolicyKit alle Informationen beisammen hat, gibt es den Zeit- und Datumseinstellungen grünes Licht, woraufhin diese wiederum sämtliche Funktionen freischalten.

Abbildung 1: Das Freischalten der Uhreneinstellungen erfolgt unter Gnome über PolicyKit.

Auf diese Weise lassen sich mit PolicyKit gezielt Rechte erteilen oder entziehen. Beispielsweise könnte man dem Benutzer carlo ausnahmsweise gestatten, an der Uhr zu drehen – alle anderen Systemfunktionen blieben für ihn weiterhin tabu. Im Gegensatz zu su oder sudo erhalten die beteiligten Anwendungen dabei keinerlei Root-Rechte. carlo könnte folglich über das Uhren-Fenster weder die Zeitzone ändern, noch auf andere Teile des Systems zugreifen.

Unter der Haube

Da PolicyKit selbst aus mehreren Einzelteilen besteht, löst eine Anfrage immer gleich eine kleine Kettenreaktion aus. Zu Beginn ruft ein unprivilegiertes Programm, der sogenannte Client, eine Funktion eines privilegieren Programms auf, des "Mechanism". Beispielsweise könnte ein Desktop-Applet (der Client) versuchen, den Rechner via DeviceKit (der Mechanism) in einen Energiesparmodus zu versetzen.

Der Mechanism vergewissert sich jetzt bei PolicyKit, ob der Client diese Aktion auslösen darf. Dazu schickt er eine Anfrage an den D-Bus-Service org.freedesktop.PolicyKit1. D-Bus seinerseits startet daraufhin automatisch den PolicyKit-Daemon polkitd. Der prüft anhand seiner Regeln, ob der Client vertrauenswürdig ist. Sofern dies die Eingabe eines Passworts erfordert, bittet er über den D-Bus die Desktopumgebung, einen Authentication Agent zu starten. Dieser besteht in der Regel aus einem kleinen Fenster, das vom Benutzer ein Passwort einfordert. Wie der Authentication Agent genau auszusehen hat, bestimmen die Entwickler der Desktopumgebung.

Erhält der Mechanism schließlich von PolicyKit über den D-Bus eine positive Rückmeldung, führt er die entsprechende Funktion aus, andernfalls bricht er mit einer Fehlermeldung ab. Abbildung 2 veranschaulicht den kompletten Ablauf.

Abbildung 2: Zunächst aktiviert der Client einen Systemdienst (1). Dieser fragt dann via D-Bus PolicyKit um Erlaubnis (2), das wiederum bei Bedarf ein Passwort vom Nutzer einfordert (3).

Zahlenrätsel

Die schöne neue PolicyKit-Welt besitzt allerdings auch ein paar Makel. So müssen sowohl die Anwendungen als auch die Distributionen PolicyKit unterstützen. Einigermaßen flächendeckend ist das im Moment nur unter Ubuntu der Fall. OpenSuse 11.2 und Fedora 12 verlangen für die meisten Systemeinstellungen weiterhin das Root-Passwort. In OpenSuse dient PolicyKit lediglich dazu, die Software-Aktualisierungen durch einen beliebigen Benutzer einspielen zu lassen.

Darüber hinaus wurde das System mit Version 0.9.1 komplett umgekrempelt, die neueren PolicyKit-Fassungen arbeiten nicht mehr abwärtskompatibel. Folglich mussten erst alle Entwickler ihre darauf basiereren Anwendungen anpassen oder umschreiben. Die Distributionen greifen deshalb teilweise zur Holzhammermethode und bringen sowohl eine alte als auch die aktuelle Version mit. Letztere erhält zur besseren Unterscheidung häufig den inoffiziellen Namen PolicyKit-1 oder kurz polkit-1.

Mit ihr stellt auch der grafische Rechteeditor aus Abbildung 3 nur noch Makulatur dar. Er funktioniert ausschließlich unter einem alten PolicyKit bis einschließlich Version 0.9.0. Wer in die Rechtevergabe eingreifen möchte, muss derzeit wohl oder übel zum guten alten Texteditor greifen. Doch das ist weniger aufwändig, als es im ersten Moment klingt.

Abbildung 3: Dieser komfortable Rechteeditor funktioniert nur bis zur PolicyKit-Version 0.9.0.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

  • Häppchenweise
    Das neue Sicherheitsmodell Policykit ermöglicht unter Ubuntu Hardy Heron eine bessere Feinabstimmung sicherheitsrelevanter Aufgaben, als das bislang mit Sudo möglich war.
  • Zugriffskontrolle
    Unter Linux gibt es den Systemadministrator, der alles darf, und den gemeinen Nutzer, der praktisch nichts darf. Doch für die tägliche Arbeit ist es manchmal nötig als Root zu arbeiten: Das neue KAuth sorgt für die nötigen Berechtigungen und berücksichtigt dabei auch Windows und Mac OS X.
  • Gnome 2.30 veröffentlicht
    Mit der Veröffentlichung von Gnome 2.30 halten diverse Verbesserungen und Änderungen Einzug in den freien Linux-Desktop.
  • Fünf neue Module in Gnome 2.24
  • Gnome 2.30 ist (fast) fertig
    An die Versionsnummer Gnome 2.30 wird man sich vermutlich noch lange erinnern. Sie markiert den voraussichtlich letzten größeren Versionssprung vor Gnome 3.0 und ist jetzt als Release Candidate erhältlich.
Kommentare

Infos zur Publikation

LU 07/2015: Daten sichern

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Grammatikprüfung in LibreOffice nachrüsten
Grammatikprüfung in LibreOffice nachrüsten
Tim Schürmann, 24.04.2015 19:36, 0 Kommentare

LibreOffice kommt zwar mit einer deutschen Rechtschreibprüfung und einem guten Thesaurus, eine Grammatikprüfung fehlt jedoch. In ältere 32-Bit-Versionen ...

Aktuelle Fragen

Fernwartung oder wartung im haus
heide marie voigt, 29.06.2015 10:37, 1 Antworten
gerne hätte ich jemanden in Bremen nord, der mir weiter hilft - angebote bitte mit preis HMVoigt
Druckeranschluss DCP-195C
heide marie voigt, 29.06.2015 10:35, 1 Antworten
installiert ist linux ubuntu 15.04 offenbar auch der treiber für den Drucker DCP-195C. Die Konta...
keine arbeitsleiste beim einloggen
heide marie voigt, 27.06.2015 13:31, 0 Antworten
seit der neu-installierung von linux ubuntu 15.04 erscheint die arbeitsleiste rechts oben erst na...
raid platte an linux mint 17.1
andreas schug, 23.06.2015 19:44, 0 Antworten
folgende thematik NAS Iomega Storage Center wird auf einmal nicht mehr im netzwerk erkannt .....
SUSE 13.2 - Probleme mit kmail
kris kelvin, 03.06.2015 13:26, 2 Antworten
Hallo, nach dem Umstieg auf 13.1 hatte ich das Problem, daß kmail extrem langsam reagierte. Nun...