Dieses Kapitel beschreibt die RBAC (Role-Based Access Control, rollenbasierte Zugriffskontrolle) im Zusammenhang mit Sun Cluster. Folgende Themen werden behandelt:
So erstellen Sie eine Rolle mithilfe des Tools "Administrative Roles"
So ändern Sie die RBAC-Eigenschaften eines Benutzers mit dem Tool "User Accounts"
So ändern Sie die RBAC-Eigenschaften eines Benutzers mit der Befehlszeile
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.
Bis |
Finden Sie unter |
---|---|
Mehr über RBAC erfahren |
Kapitel 8, Using Roles and Privileges (Overview) in System Administration Guide: Security Services |
Konfigurieren und Verwenden von RBAC und Verwalten der dazugehörigen RBAC-Elemente |
Kapitel 9, Using Role-Based Access Control (Tasks) in System Administration Guide: Security Services |
Mehr über RBAC-Elemente und -Tools erfahren |
Kapitel 10, Role-Based Access Control (Reference) in System Administration Guide: Security Services |
SunPlex-Manager und ausgewählte Sun Cluster-Befehle und Optionen, die Sie an der Befehlszeile ausführen, verwenden RBAC zur Autorisierung. 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. scswitch(1M) (ausgewählte Optionen) |
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 |
|
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 |
|
solaris.cluster.network.admin |
Ausführen von Verwaltungsaufgaben bei IPMP-Attributen |
|
solaris.cluster.network.read |
Lesen von Informationen zu IP Network Multipathing |
|
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 |
|
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 |
|
solaris.cluster.node.modify |
Ändern von Knotenattributen |
|
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 |
|
solaris.cluster.transport.modify |
Ändern von Transportattributen |
Zum Erstellen einer Rolle müssen Sie entweder eine Rolle haben, die das Rechteprofil "Primary Administrator" (Primäradministrator) aufweist, oder sich als root-Benutzer anmelden.
Tabelle 2–1 Assistent zum Hinzufügen der Verwaltungsrolle: Dialogfelder und Felder
Dialogfeld |
Felder |
Feldbeschreibung |
---|---|---|
Step 1: Enter a role name |
Rollenname |
Kurzname der Rolle. |
|
Voller Name |
Ausgeschriebener Name. |
|
Beschreibung |
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 |
******** |
|
Passwort bestätigen |
******** |
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. |
|
Pfad |
Home-Verzeichnispfad. |
Schritt 5: Assign users to this role |
Hinzufügen |
Fügt Benutzer hinzu, die diese Rolle übernehmen können. Sie müssen denselben Geltungsbereich haben. |
|
Löschen |
Löscht Benutzer, die dieser Rolle zugewiesen sind. |
Starten Sie das Tool "Administrative Roles".
Führen Sie das Tool "Administrative Roles" aus, starten Sie die Solaris Management Console, wie im Abschnitt How to Assume a Role in the Solaris Management Console in System Administration Guide: Security Services beschrieben. Sicherheitsdienste. Dann öffnen Sie "User Tool Collection", und klicken Sie auf das Symbol "Administrative Roles".
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.
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 bietet einen Überblick über die Dialogfelder.
Sie müssen dieses Profil an die erste Stelle in der Liste der Profile setzen, die der Rolle zugewiesen sind.
Fügen Sie die Benutzer, die SunPlex-Manager-Funktionen oder Sun Cluster-Befehle benötigen, der neu erstellten Rolle hinzu.
Sie verwenden den Befehl useradd(1M), um dem System ein Benutzerkonto hinzuzufügen. Die Option -P weist einem Benutzerkonto eine Rolle zu.
Wenn Sie fertig sind, klicken Sie auf "Finish".
Ö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 wirksam. Nachdem Sie sich als root angemeldet haben, geben Sie Folgendes ein:
# /etc/init.d/nscd stop # /etc/init.d/nscd start |
Superuser werden oder eine Rolle annehmen, mit der andere Rollen erstellt werden können.
Wählen Sie eine Methode zur Erstellung einer Rolle aus:
Für Rollen im lokalen Geltungsbereich verwenden Sie den Befehl roleadd(1M), um eine neue lokale Rolle mit den dazugehörigen Attributen anzugeben.
Alternativ dazu können Sie für Rollen im lokalen Geltungsbereich die Datei user_attr(4) 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 Befehl smrole(1M), 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.
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 |
Die folgende Befehlsfolge zeigt, wie eine Rolle mit dem Befehl smrole erstellt wird. In diesem Beispiel wird eine neue Version der Rolle "Operator" erstellt, dem das Standard-Rechteprofil "Operator" und das Rechteprofil "Media Restore" 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 |
Um die Eigenschaften eines Benutzers zu ändern, müssen Sie entweder die User Tool Collection als root-Benutzer ausführen oder eine Rolle übernehmen, der das Rechteprofil "Primary Administrator" zugewiesen ist.
Starten Sie das Tool "User Accounts".
Um das User Accounts-Tool auszuführen, müssen Sie die Solaris Management Console starten, wie in How to Assume a Role in the Solaris Management Console in System Administration Guide: Security Services im System Administration Guide: Security Services beschrieben. 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.
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).
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".
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.
Superuser werden oder eine Rolle übernehmen, mit der Benutzerdateien geändert werden können.
Verwenden Sie den entsprechenden Befehl:
Um Autorisierungen, Rollen oder Rechteprofile zu ändern, die in einem lokalen Geltungsbereich definierten Benutzern zugewiesen sind, verwenden Sie den Befehlusermod(1M).
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.
Um Autorisierungen, Rollen oder Rechteprofile zu ändern, die einem in einem Namensdienst definierten Benutzer zugewiesen sind, verwenden Sie den Befehlsmuser(1M).
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.