Verwaltung von Benutzerrechten und -rollen

Ab Version 4.0.7.5 bietet der opsi-configed die Userrollen-Funktion an.

Zur Verwendung des Features muss user roles in der modules-Datei freigeschaltet sein.

In der Oberfläche zeigt die Existenz der Kategorie user in der Übersicht der Server-Hostparameter, dass diese Funktion verfügbar (aber noch nicht unbedingt aktiv) ist. Im Baum der Eigenschaften steht direkt in user primär der boolesche Eintrag

user.{}.register

mit dem Defaultwert false.

Die anderen Einträge, die an dieser Stelle des Property-Baums stehen, sind die Defaultwerte für die auch userspezifisch mögliche Konfiguration der Server-Konsole (vgl. opsiconfiged Server-Konsole):

Zur Aktivierung der Userrollen-Funktionalität ist

  1. der Wert von user.{}.register auf true zu setzen;

  2. eine Modules-Datei einzuspielen, die das Feature userroles temporär oder dauerhaft aktiviert hat.

Bei aktiver Userrollen-Funktionalität wird für den angemeldeten User ein Eintrag im Eigenschaftsbaum erzeugt. Die dabei für die Rechteverwaltung verwendeten Defaulteinstellungen entsprechend den "klassischen" Vorgaben für einen Adminitrator, d.h. zunächst werden dem User keine Einschränkungen auferlegt. Z.B. für einen User admindepot1 werden die Einträge

user.{admindepot1}.privilege.host.all.registered_readonly	[false]
user.{admindepot1}.privilege.host.depotaccess.configured	[false]
user.{admindepot1}.privilege.host.depotaccess.depots		[]
user.{admindepot1}.privilege.host.opsiserver.write		[true]

generiert.

Die vier Einträge bedeuten:

  • admindepot1 hat nicht lediglich readonly-Zugriff auf den Server (ein reiner readonly-Zugriff wäre möglicherweise für einen Mitarbeiter aus dem Helpdesk-Bereich angemessen);

  • Depotrestriktionen existieren nicht bzw. werden nicht berücksichtigt;

  • entsprechend kann die Liste der für den User zugänglichen Depots leer bleiben (aber auch wenn hier eine Auswahl aus den verfügbaren eingetragen ist, hat dies, solange depotaccess.configured false, keine Wirkung);

  • der User darf configserver-Einstellungen aller Art bearbeiten.

Soll künftig admindepot1 nur noch Zugriff auf die Rechner im Depotserver depot1 haben, ist folgendes einzustellen:

  • host.depotaccess.configured ist auf true zu setzen;

  • in die Liste host.depotaccess.depots ist der Wert "depot1" einzutragen.

Nach einem (vollständigen) Datenreload sind für den User admindepot1 keine Clients aus anderen Depots mehr sichtbar (und auch nur noch Depoteinstellungen für depot1 zugänglich).

admindepot1 kann alle Restriktionen selbst aufheben, solange er über das Privileg host.opsiserver.write verfügt.

Um die Abriegelung komplett zu machen, ist daher für admindepot1 noch

  • host.opsiserver.write auf false zu stellen.

Die auf diese Weise gesetzten Privilegien beschränken ausschließlich die Funktionalität des opsi-configed. Bei anderen Zugriffsmethoden auf das JSON-RPC-Interface des opsi-servers werden sie derzeit nicht wirksam.