Sun Cluster 3.1 10/03 Handbuch Systemverwaltung

Kapitel 2 Sun Cluster und RBAC

Dieses Kapitel beschreibt die RBAC (Role-Based Access Control, rollenbasierte Zugriffskontrolle) im Zusammenhang mit Sun Cluster. Folgende Themen werden behandelt:

Konfigurieren und Verwenden von RBAC mit Sun Cluster

In der nachstehenden Tabelle finden Sie die Dokumentation, in der Sie sich über das Konfigurieren und Verwenden der RBAC informieren können. Spezifische Schritte bei der Einstellung und Verwendung von RBAC mit Sun Cluster werden später in diesem Kapitel vorgestellt.

Informationen zu 

Finden Sie unter 

Mehr über RBAC erfahren 

“Role-Based Access Control (Overview)” in System Administration Guide: Security Services

Konfigurieren und Verwenden von RBAC und Verwalten der dazugehörigen RBAC-Elemente  

“Role-Based Access Control (Tasks)” in System Administration Guide: Security Services

Mehr über RBAC-Elemente und -Tools erfahren 

“Role-Based Access Control (Reference)” in System Administration Guide: Security Services

Sun Cluster-RBAC-Rechteprofile

SunPlex-Manager und bestimmte, über die Befehlszeile eingegebene Sun Cluster-Befehle und -Optionen verwenden RBAC zur Authentisierung. Sun Cluster enthält mehrere RBAC-Rechteprofile. Sie können diese Rechteprofile Benutzern oder Rollen zuweisen und ihnen so auf verschiedenen Ebenen Zugriff auf Sun Cluster gewähren. Sun stellt die folgenden Rechteprofile mit der Sun Cluster-Software zur Verfügung.

Rechteprofile 

Enthaltene Autorisierungen 

Mit dieser Autorisierung hat die Rollenidentität folgende Möglichkeiten 

Sun Cluster-Befehle 

Keine, enthält jedoch eine Liste von Sun Cluster-Befehlen, die mit euid=0 ausgeführt werden.

Ausführen bestimmter Sun Cluster-Befehle, die zum Konfigurieren und Verwalten eines Clusters verwendet werden, u.a. 

scgdevs(1M)

scswitch(1M) (ausgewählte Optionen)

scha_control( 1HA)

scha_resource_get(1HA)

scha_resource_setstatus(1HA)

scha_resourcegroup_get(1HA)

scha_resourcetype_get(1HA)

Einfacher Solaris-Benutzer 

Dieses vorhandene Solaris-Rechteprofil umfasst Solaris-Autorisierungen sowie: 

Ausführen der gleichen Vorgänge wie mit der Rollenidentität Einfacher Solaris-Benutzer, sowie: 

 

solaris.cluster.device.read

Lesen von Informationen zu Gerätegruppen  

  

solaris.cluster.gui

Zugriff auf SunPlex-Manager 

  

solaris.cluster.network.read

Lesen von Informationen zu IP Network Multipathing 


Hinweis –

Diese Autorisierung gilt nicht für SunPlex-Manager.


  

solaris.cluster.node.read

Lesen von Informationen zu Knotenattributen 

  

solaris.cluster.quorum.read

Lesen von Informationen zu Quorum-Geräten und zum Quorum-Zustand 

  

solaris.cluster.resource.read

Lesen von Informationen zu Ressourcen und Ressourcengruppen 

  

solaris.cluster.system.read

Lesen des Cluster-Status 

  

solaris.cluster.transport.read

Lesen von Informationen zu Transporten 

Cluster-Bedienung 

solaris.cluster.appinstall

Installieren von geclusterten Anwendungen 

  

solaris.cluster.device.admin

Ausführen von Verwaltungsaufgaben bei Gerätegruppenattributen 

 

solaris.cluster.device.read

Lesen von Informationen zu Gerätegruppen 

  

solaris.cluster.gui

Zugriff auf SunPlex-Manager 

  

solaris.cluster.install

Installieren von Cluster-Software 


Hinweis –

Diese Autorisierung gilt nicht für SunPlex-Manager.


  

solaris.cluster.network.admin

Ausführen von Verwaltungsaufgaben bei IPMP-Attributen 


Hinweis –

Diese Autorisierung gilt nicht für SunPlex-Manager.


  

solaris.cluster.network.read

Lesen von Informationen zu IP Network Multipathing 


Hinweis –

Diese Autorisierung gilt nicht für SunPlex-Manager.


  

solaris.cluster.node.admin

Ausführen von Verwaltungsaufgaben bei Knotenattributen 

  

solaris.cluster.node.read

Lesen von Informationen zu Knotenattributen 

  

solaris.cluster.quorum.admin

Ausführen von Verwaltungsaufgaben bei Quorum-Geräten und Quorum-Zustandsattributen  

  

solaris.cluster.quorum.read

Lesen von Informationen zu Quorum-Geräten und zum Quorum-Zustand 

  

solaris.cluster.resource.admin

Ausführen von Verwaltungsaufgaben bei Ressourcenattributen und Ressourcengruppenattributen  

  

solaris.cluster.resource.read

Lesen von Informationen zu Ressourcen und Ressourcengruppen 

  

solaris.cluster.system.admin

Verwalten des Systems 


Hinweis –

Diese Autorisierung gilt nicht für SunPlex-Manager.


  

solaris.cluster.system.read

Lesen des Cluster-Status 

  

solaris.cluster.transport.admin

Ausführen von Verwaltungsaufgaben bei Transportattributen 

  

solaris.cluster.transport.read

Lesen von Informationen zu Transporten 

Systemverwalter 

Dieses vorhandene Solaris-Rechteprofil umfasst die gleichen Autorisierungen wie das Cluster-Verwaltungsprofil. 

Es können die gleichen Vorgänge wie mit der Rollenidentität Cluster-Verwaltungsrolle ausgeführt werden, und zusätzlich weitere Systemverwaltungsvorgänge. 

Cluster-Verwaltung 

Dieses Rechteprofil umfasst die gleichen Autorisierungen wie das Cluster-Bedienungsprofil sowie folgende zusätzliche Autorisierungen: 

Ausführen der gleichen Vorgänge wie mit der Rollenidentität Cluster-Bedienung, sowie: 

  

solaris.cluster.device.modify

Ändern von Gerätegruppenattributen 

  

solaris.cluster.gui

Zugriff auf SunPlex-Manager 

  

solaris.cluster.network.modify

Ändern von IPMP-Attributen 


Hinweis –

Diese Autorisierung gilt nicht für SunPlex-Manager.


  

solaris.cluster.node.modify

Ändern von Knotenattributen 


Hinweis –

Diese Autorisierung gilt nicht für SunPlex-Manager.


  

solaris.cluster.quorum.modify

Ändern von Quorum-Geräte- und Quorum-Zustandsattributen 

  

solaris.cluster.resource.modify

Ändern von Ressourcen- und Ressourcengruppenattributen 

  

solaris.cluster.system.modify

Ändern von Systemattributen 


Hinweis –

Diese Autorisierung gilt nicht für SunPlex-Manager.


  

solaris.cluster.transport.modify

Ändern von Transportattributen 

Erstellen und Zuweisen einer RBAC-Rolle mit einem Sun Cluster-Verwaltungs-Rechteprofil

Zum Erstellen einer Rolle müssen Sie entweder eine Rolle übernehmen, der das Rechteprofil “Primärverwalter” zugewiesen ist, oder Sie müssen sich als root-Benutzer anmelden.

So erstellen Sie eine Rolle mithilfe des Tools “Administrative Roles”
  1. Starten Sie das Tool “Administrative Roles”.

    Führen Sie das Tool “Administrative Roles” aus, und starten Sie die Solaris-Verwaltungskonsole wie unter “How to Assume a Role in the Console Tools” in System Administration Guide: Security Services beschrieben. Dann öffnen Sie “User Tool Collection”, und klicken Sie auf das Symbol “Administrative Roles”.

  2. Starten Sie den Assistenten zum Hinzufügen von Verwaltungsrollen.

    Wählen Sie im Menü “Action” den Befehl “Add Administrative Role” aus, um den Assistenten zum Hinzufügen von Verwaltungsrollen zum Konfigurieren von Rollen zu starten.

  3. Konfigurieren Sie eine Rolle, der das Rechteprofil “Cluster-Verwaltung” zugewiesen ist.

    Mit den Schaltflächen “Next” und “Back” können Sie zwischen den Dialogfeldern navigieren. Beachten Sie, dass die Schaltfläche “Next” erst verfügbar ist, wenn Sie alle erforderlichen Felder ausgefüllt haben. Im letzten Dialogfeld können Sie die eingegebenen Daten überprüfen; an dieser Stelle können Sie zurückgehen, um Eingaben zu ändern, oder Sie klicken auf “Finish”, um die neue Rolle zu speichern. Tabelle 2–1 fasst die Dialogfelder zusammen.


    Hinweis –

    Sie müssen dieses Profil an die erste Stelle in der Liste der Profile setzen, die der Rolle zugewiesen sind.


  4. Fügen Sie die Benutzer, die SunPlex-Manager-Funktionen oder Sun Cluster-Befehle benötigen, der neu erstellten Rolle hinzu.

    Mit dem useradd(1M)-Befehl fügen Sie dem System ein Benutzerkonto hinzu. Die Option -P weist einem Benutzerkonto eine Rolle zu.

  5. Wenn Sie fertig sind, klicken Sie auf “Finish”.

  6. Öffnen Sie ein Terminalfenster, melden Sie sich als root an, und starten und stoppen Sie den Namensdienst-Cache-Dämon.

    Die neue Rolle ist erst nach einem Neustart des Namensdienst-Cache-Dämons verfügbar. Nachdem Sie sich als root angemeldet haben, geben Sie Folgendes ein:


    # /etc/init.d/nscd stop
    # /etc/init.d/nscd start
    
Tabelle 2–1 Der Assistent zum Hinzufügen von Verwaltungsrollen: Dialogfelder und Felder

Dialogfeld 

Felder  

Feldbeschreibung 

Step 1: Enter a role name 

Role Name 

Kurzname der Rolle. 

 

Full Name 

Ausgeschriebener Name. 

 

Description  

Beschreibung der Rolle. 

 

Role ID Number 

Benutzer-ID für die Rolle (wird automatisch erhöht). 

 

Role Shell 

Die für Rollen verfügbaren Profil-Shells: C-Shell Verwalter, Bourne-Shell Verwalter oder Korn-Shell Verwalter. 

 

Create a role mailing list 

Erstellt eine Adressenliste der Benutzer, die dieser Rolle zugewiesen sind. 

Step 2: Enter a role password 

Role Password 

******** 

 

Confirm Password 

******** 

Step 3: Select role rights 

Available Rights / Granted Rights 

Weist einer Rolle Rechteprofile zu oder entfernt sie daraus. 

Beachten Sie, dass Sie das System nicht daran hindert, denselben Befehl mehrmals einzugeben. Die Attribute, die dem ersten Vorkommen eines Befehls in einem Rechteprofil zugewiesen sind, haben Vorrang, und alle nachfolgenden Eingaben desselben Befehls werden ignoriert. Mit den Pfeilen “Nach oben” bzw. “Nach unten” können Sie die Reihenfolge ändern. 

Step 4: Select a home directory 

Server 

Server für das Home-Verzeichnis. 

 

Path 

Home-Verzeichnispfad. 

Step 5: Assign users to this role 

Add 

Fügt Benutzer hinzu, die diese Rolle übernehmen können. Sie müssen denselben Geltungsbereich haben. 

 

Delete 

Löscht Benutzer, die dieser Rolle zugewiesen sind. 

So erstellen Sie eine Rolle mit der Befehlszeile
  1. Melden Sie sich als Superbenutzer an oder übernehmen Sie eine Rolle, mit der Sie weitere Rollen erstellen können.

  2. Wählen Sie eine Methode zur Erstellung einer Rolle aus:

    • Für Rollen im lokalen Geltungsbereich verwenden Sie den roleadd(1M)-Befehl, um eine neue lokale Rolle mit den dazugehörigen Attributen anzugeben.

    • Alternativ dazu können Sie für Rollen im lokalen Geltungsbereich die user_attr(4 )-Datei bearbeiten und mit type=role Benutzer hinzufügen.

      Diese Methode wird nur für den Notfall empfohlen, weil beim Eingeben leicht Fehler entstehen.

    • Für Rollen in einem Namensdienst verwenden Sie den smrole(1M)-Befehl, um die neue Rolle und die dazugehörigen Attribute anzugeben.

      Zur Ausführung dieses Befehls benötigen Sie eine Authentisierung als Superbenutzer oder eine Rolle, die andere Rollen erstellen kann. Sie können smrole auf alle Namensdienste anwenden. Dieser Befehl wird als Client des Solaris Management Console-Servers ausgeführt.

  3. Starten und Stoppen Sie den Namensdienst-Cache-Dämon.

    Neue Rollen sind erst nach einem Neustart des Namensdienst-Cache-Dämons wirksam. Als root geben Sie Folgendes ein:


    # /etc/init.d/nscd stop
    # /etc/init.d/nscd start
    

Beispiel 2–1 Erstellen einer benutzerdefinierten Rolle “Bediener” mit dem smrole-Befehl

Die nachstehende Sequenz zeigt die Erstellung einer Rolle mit dem smrole-Befehl. In diesem Beispiel wird eine neue Version der Rolle “Bediener” erstellt, dem das Standard-Rechteprofil “Bediener” und das Rechteprofil “Medienwiederherstellung” zugewiesen ist.


% su primaryadmin
# /usr/sadm/bin/smrole add -H myHost -- -c “Custom Operator” -n oper2 -a johnDoe \
-d /export/home/oper2 -F “Backup/Restore Operator” -p “Operator” -p “Media Restore”
Authenticating as user: primaryadmin

Type /? for help, pressing <enter> accepts the default denoted by [ ]
Please enter a string value for: password :: <type primaryadmin password>

Loading Tool: com.sun.admin.usermgr.cli.role.UserMgrRoleCli from myHost
Login to myHost as user primaryadmin was successful.
Download of com.sun.admin.usermgr.cli.role.UserMgrRoleCli from myHost was successful.

Type /? for help, pressing <enter> accepts the default denoted by [ ]
Please enter a string value for: password ::<type oper2 password>

# /etc/init.d/nscd stop
# /etc/init.d/nscd start

Verwenden Sie smrole mit der >list-Option wie folgt, um die neu erstellte Rolle (und jede andere Rolle) anzuzeigen:


# /usr/sadm/bin/smrole list --
Authenticating as user: primaryadmin

Type /? for help, pressing <enter> accepts the default denoted by [ ]
Please enter a string value for: password :: <type  primaryadmin password>

Loading Tool: com.sun.admin.usermgr.cli.role.UserMgrRoleCli from myHost
Login to myHost as user primaryadmin was successful.
Download of com.sun.admin.usermgr.cli.role.UserMgrRoleCli from myHost was successful.
root                    0               Super-User
primaryadmin            100             Most powerful role
sysadmin                101             Performs non-security admin tasks
oper2                   102             Custom Operator

Ändern der RBAC-Eigenschaften eines Benutzers

Sie müssen entweder “User Tool Collection” als root-Benutzer ausführen oder eine Rolle übernehmen, der das Rechteprofil “Primärverwalter” zugewiesen ist, um Benutzereigenschaften ändern zu können.

So ändern Sie die RBAC-Eigenschaften eines Benutzers mit dem Tool “User Accounts”
  1. Starten Sie das Tool “User Accounts”.

    Sie müssen Solaris Management Console wie unter “How to Assume a Role in the Console Tools” in System Administration Guide: Security Services beschrieben starten, um das Tool “User Accounts” auszuführen. Dann öffnen Sie “User Tool Collection” und klicken auf das Symbol “User Accounts”.

    Nach dem Start des Tools “User Accounts” werden die Symbole für die vorhandenen Benutzerkonten im Anzeigebereich angezeigt.

  2. Klicken Sie auf das Symbol des zu ändernden Benutzerkontos, und wählen Sie im Menü “Action” den Befehl “Properties” aus (oder doppelklicken Sie einfach auf das Benutzerkontosymbol).

  3. Klicken Sie auf die entsprechende Registerkarte im Dialogfeld für die zu ändernde Eigenschaft. Gehen Sie wie folgt vor:

    • Klicken Sie auf die Registerkarte “Roles”, um die dem Benutzer zugewiesenen Rollen zu ändern, und verschieben Sie die zu ändernde Rollenzuweisung in die entsprechende Spalte: “Available Roles” oder “Assigned Roles”.

    • Klicken Sie auf die Registerkarte “Rights”, um die dem Benutzer zugewiesenen Rechteprofile zu ändern, und verschieben Sie diese in die entsprechende Spalte: “Available Rights” oder “Assigned Rights”.


      Hinweis –

      Es ist nicht empfehlenswert, den Benutzern direkt Rechteprofile zuzuweisen. Der beste Weg besteht darin, die Benutzer zur Übernahme von Rollen zu zwingen, wenn sie Anwendungen mit Privilegien ausführen müssen. Mit dieser Strategie wird ein Missbrauch von Privilegien durch normale Benutzer verhindert.


So ändern Sie die RBAC-Eigenschaften eines Benutzers mit der Befehlszeile
  1. Melden Sie sich als Superbenutzer an oder übernehmen Sie eine Rolle, mit der Sie Benutzerdateien ändern können.

  2. Verwenden Sie den entsprechenden Befehl:

    • Verwenden Sie den usermod(1M)-Befehl, um Autorisierungen, Rollen oder Rechteprofile zu ändern, die einem im lokalen Geltungsbereich definierten Benutzer zugewiesen sind.

    • Alternativ dazu können Sie die user_attr-Datei bearbeiten, um Autorisierungen, Rollen oder Rechteprofile zu ändern, die einem im lokalen Geltungsbereich definierten Benutzer zugewiesen sind.

      Diese Methode wird nur für den Notfall empfohlen, weil beim Eingeben leicht ein Fehler entsteht.

    • Verwenden Sie den smuser(1M)-Befehl, um Autorisierungen, Rollen oder Rechteprofile zu ändern, die einem in einem Namensdienst definierten Benutzer zugewiesen sind.

      Für diesen Befehl benötigen Sie eine Authentisierung als Superbenutzer oder eine Rolle, die Benutzerdateien ändern kann. Sie können smuser auf alle Namensdienste anwenden. smuser wird als Client des Solaris Management Console-Servers ausgeführt.