Solaris/RBAC

Aus UUGRN

Was ist RBAC[Bearbeiten]

RBAC steht für Role based Access Control, administrative Rechte am Solaris-System werden hierbei von Usern (z.B. root) weg-abstrahiert und durch Rollen ersetzt.

Somit ist es z.B. möglich Aufgaben die als User root ausgeführt werden müssen an andere User zu delegieren, ohne Zugang zum root-User geben zu müssen. Solaris kennt von Haus aus bereits mehrere typische Rollen wie z.B.

  • Software-Installation
  • Administration von Druckern
  • User-Verwaltung

eigene Rollen können allerdings nachgerüstet werden.

Typisches Beispiel[Bearbeiten]

Der Apache Web-Server muß, um sich auf Port 80 binden zu können, initial von root gestartet werden. Erst die Folge-Prozesse werden an den User www-data (hier ein Debian-System) delegiert.

% ps axu | grep apache | grep -v grep
root      4045  0.0  1.0  15480  4096 ?        Ss   07:00   0:01 /usr/sbin/apache2 -k start
www-data  4046  0.0  0.6  14748  2368 ?        S    07:00   0:00 /usr/sbin/apache2 -k start
www-data  4047  0.0  0.8 236824  3416 ?        Sl   07:00   0:00 /usr/sbin/apache2 -k start
www-data  4050  0.0  0.7 236824  3088 ?        Sl   07:00   0:00 /usr/sbin/apache2 -k start

Dieses Szenario kann auf Solaris komplett umgangen werden, indem dem User www-data per RBAC eine Rolle zugeteilt wird, die ihm erlaubt sich direkt an Port 80 zu binden, ohne den Umweg über root gehen zu müssen. Diese Rolle erlaubt allerdings nur das Binden an Port 80, nicht die Installation von Software, das Löschen von /usr oder das Binden an Port 81.