Teil I Übersicht über die Sicherheit
1. Sicherheitsservices (Überblick)
Teil II System-, Datei- und Gerätesicherheit
2. Verwalten von Rechnersicherheit (Übersicht)
3. Steuern des Zugriffs auf Systeme (Aufgaben)
4. Steuern des Zugriffs auf Geräte (Aufgaben)
5. Verwenden von Basic Audit Reporting Tool (Aufgaben)
6. Steuern des Zugriffs auf Dateien (Aufgaben)
7. Verwenden von Automated Security Enhancement Tool (Aufgaben)
Teil III Rollen, Berechtigungsprofile und Berechtigungen
8. Verwenden von Rollen und Berechtigungen (Übersicht)
9. Rollenbasierte Zugriffssteuerung (Aufgaben)
Verwenden von RBAC (Übersicht der Schritte)
Konfigurieren von RBAC (Übersicht der Schritte)
So planen Sie die RBAC-Implementierung
So können Sie eine Rolle mit der GUI erstellen und zuweisen
So erstellen Sie eine Rolle über die Befehlszeile
So weisen Sie eine Rolle einem lokalen Benutzer zu
So wandeln Sie den root-Benutzer in eine Rolle um
Verwenden von Rollen (Übersicht der Schritte)
So nehmen Sie eine Rolle in einem Terminalfenster an
So nehmen Sie eine Rolle in der Solaris Management Console an
Verwalten von RBAC (Übersicht der Schritte)
So ändern Sie das Passwort einer Rolle
So ändern Sie die Eigenschaften einer Rolle
So erstellen oder ändern Sie ein Berechtigungsprofil
10. Rollenbasierte Zugriffssteuerung (Übersicht)
Teil IV Kryptografische Services
13. Oracle Solaris Cryptographic Framework (Übersicht)
14. Oracle Solaris Cryptographic Framework (Aufgaben)
15. Oracle Solaris Key Management Framework
Teil V Authentifizierungsservices und sichere Kommunikation
16. Verwenden von Authentifizierungsservices (Aufgaben)
19. Verwenden von Oracle Solaris Secure Shell (Aufgaben)
20. Oracle Solaris Secure Shell (Referenz)
21. Einführung zum Kerberos-Service
22. Planen des Kerberos-Service
23. Konfigurieren des Kerberos-Service (Aufgaben)
24. Kerberos-Fehlermeldungen und -Fehlerbehebung
25. Verwalten von Kerberos-Hauptelementen und Richtlinien (Aufgaben)
26. Verwenden von Kerberos-Anwendungen (Aufgaben)
27. Der Kerberos-Service (Referenz)
Teil VII Prüfung bei Oracle Solaris
28. Prüfung bei Oracle Solaris (Übersicht)
29. Planen der Oracle Solaris-Prüfung
30. Verwalten der Oracle Solaris-Prüfung (Aufgaben)
Die Solaris Management Console-GUI ist die bevorzugte Methode zur Verwaltung von RBAC.
Hinweis - Versuchen Sie nicht, RBAC über die Befehlszeile und die grafische Benutzeroberfläche gleichzeitig zu verwalten. Dies könnte zu widersprüchlichen Änderungen an der Konfiguration und zu unvorhergesehenem Verhalten führen. Sie können beide Tools zur Verwaltung von RBAC verwenden, jedoch nicht gleichzeitig.
Bevor Sie beginnen
Sie müssen eine Rolle angenommen haben, die das Profil "User Security" beinhaltet, oder sich als Superuser angemeldet haben. Sie können sich nicht die Rolle verwenden, deren Passwort Sie ändern möchten. Eine Rolle kann das eigene Passwort nicht ändern.
$ passwd -r naming-service target-rolename
Wendet die Passwortänderungen auf eines der folgenden Repositorys an: files, nis, nisplus oder ldap. Wenn kein Repository angegeben ist, wird das Passwort in files geändert.
Name einer vorhandenen Rolle, die Sie ändern möchten.
Weitere Befehlsoptionen finden Sie auf der Manpage passwd(1).
Informationen zum Starten der Konsole finden Sie unter So nehmen Sie eine Rolle in der Solaris Management Console an.
Die Anmelderolle kann nicht auch die Zielrolle sein.
Wenn Sie den Bereich Files wählen, wird das Rollenpasswort auf dem lokalen System geändert. Wenn Sie den Bereich LDAP wählen, wird das Rollenpasswort im LDAP-Naming Service geändert.
Ausführlichere Informationen finden Sie in der Onlinehilfe.
Dieser Befehl wird als Client des Solaris Management Console-Servers ausgeführt.
$ /usr/sadm/bin/smrole -D domain-name -r admin-role -l <Type admin-role password> \ modify -- -n target-rolename -P password
Name der zu ändernden Domain
Name der administrativen Rolle, von der die Zielrolle geändert werden kann. Die administrative Rolle muss über die Autorisierung solaris.admin.usermgr.pswd verfügen. Die administrative Rolle und die Zielrolle dürfen nicht identisch sein.
Eingabeaufforderung für das Passwort von admin-role
Trennzeichen zwischen Authentifizierungsoptionen und Unterbefehlsoptionen
Name der Zielrolle
Neues Passwort für target-rolename
Eine vollständige Liste der Befehlsoptionen finden Sie auf der Manpage smrole(1M).
Beispiel 9-13 Ändern des Passworts einer lokalen Rolle mit dem Befehl passwd
In diesem Beispiel ändert der Superuser das Passwort der lokalen Rolle operadm.
# passwd -r files operadm New password: Type new password Re-enter new password: Retype new password
Beispiel 9-14 Ändern des Passworts einer Rolle in einem LDAP-Repository
In diesem Beispiel ändert die Rolle "Primary Administrator" das Passwort der Rolle operadm im LDAP-Directory Service.
$ passwd -r ldap operadm New password: Type new password Re-enter new password: Retype new password
Beispiel 9-15 Ändern des Passworts einer Rolle mit dem Befehl smrole modify
In diesem Beispiel stellt der Administrator eine Verbindung mit dem Solaris Management Console-Server her, um das operadm-Passwort in der NIS-Domain zu ändern. Wenn der Administrator die Eingabetaste drückt, ohne ein Passwort anzugeben, wird die Eingabeaufforderung New Password: angezeigt.
$ /usr/sadm/bin/smrole -D nis:/examplehost/example.domain \ -r primaryadm -l <Type primaryadm password> \ modify -- -n operadm -P Press the Return key New Password: a!2@3#4$5%6*7 $
Bevor Sie beginnen
Um die Eigenschaften einer Rolle ändern zu können, müssen Sie entweder eine Rolle annehmen, die das Berechtigungsprofil "Primary Administrator" enthält, oder zum Benutzer root wechseln. Zu den Rolleneigenschaften gehören das Passwort, die Berechtigungsprofile und Autorisierungen.
Hinweis - Informationen zum Ändern der Passworteigenschaft einer Rolle finden Sie unter So ändern Sie das Passwort einer Rolle.
Informationen zum Starten der Konsole finden Sie unter So nehmen Sie eine Rolle in der Solaris Management Console an. Führen Sie die Anweisungen im linken Fensterbereich aus, um eine Rolle in "Administrative Roles" (Administrative Rollen) zu ändern. Ausführlichere Informationen finden Sie in der Onlinehilfe.
Mit diesem Befehl werden die Attribute einer Rolle geändert, die im lokalen Name Service definiert ist.
$ rolemod -c comment -P profile-list rolename
Neuer Kommentar, der die Fähigkeiten der Rolle beschreibt
Liste der Profile, die in der Rolle enthalten sind. Diese Liste ersetzt die aktuelle Liste der Profile.
Name einer vorhandenen, lokalen Rolle, die Sie ändern möchten.
Weitere Befehlsoptionen finden Sie auf der Manpage rolemod(1M).
Mit diesem Befehl werden die Attribute einer Rolle in einem verteilten Name Service, wie NIS, NIS+ oder LDAP, geändert. Dieser Befehl wird als Client des Solaris Management Console-Servers ausgeführt.
$ /usr/sadm/bin/smrole -D domain-name \ -r admin-role -l <Type admin-role password> \ modify -- -n rolename -r username -u username
Name der zu ändernden Domain
Name der administrativen Rolle, von der die Rolle geändert werden kann. Die administrative Rolle muss über die Autorisierung solaris.role.assign verfügen. Wenn Sie Ihre angenommene Rolle ändern, muss die Rolle über die Autorisierung solaris.role.delegate verfügen.
Eingabeaufforderung für das Passwort von admin-role
Trennzeichen zwischen Authentifizierungsoptionen und Unterbefehlsoptionen
Name der neuen Rolle
Name des Benutzers, der rolename nicht mehr annehmen kann
Name des Benutzers, der rolename jetzt annehmen kann
Weitere Befehlsoptionen finden Sie auf der Manpage smrole(1M).
Beispiel 9-16 Ändern der Eigenschaften einer lokalen Rolle mit dem Befehl rolemod
In diesem Beispiel wird die Rolle operadm so geändert, dass das Berechtigungsprofil "FTP Management" enthalten ist.
$ rolemod -c "Handles printers, backup, and FTP" \ -P "Operator,FTP Management,All" operadm
Diese Berechtigungsprofile werden den Profilen hinzugefügt, die mithilfe der Datei policy.conf zugewiesen werden.
Beispiel 9-17 Ändern der Eigenschaften einer lokalen Rolle mit dem Befehl smrole modify
In dem folgenden Beispiel wird die Rolle operadm so geändert, dass das Berechtigungsprofil "FTP Management" enthalten ist.
$ /usr/sadm/bin/smrole -r primaryadm -l <Type primaryadm password> \ modify -- -n operadm -c "Handles printers, backup, and FTP" \ -p "FTP Management"
Beispiel 9-18 Ändern einer Rolle in einer Domain mit dem Befehl smrole modify
In dem folgenden Beispiel wird die Rolle clockmgr geändert. Der NIS-Benutzer mit der ID 108 kann die Rolle nicht mehr annehmen. Der NIS-Benutzer mit der ID 110 kann die Rolle clockmgr annehmen.
$ /usr/sadm/bin/smrole -D nis:/examplehost/example.domain \ -r primaryadm -l <Type primaryadm password> \ modify -- -n clockmgr -r 108 -u 110
Bei einem Berechtigungsprofil handelt es sich um die Eigenschaft einer Rolle. Erstellen oder ändern Sie ein Berechtigungsprofil, wenn die Datenbank prof_attr kein Berechtigungsprofil enthält, das Ihren Anforderungen entspricht. Weitere Informationen zu Berechtigungsprofilen finden Sie unter RBAC-Berechtigungsprofile.
Bevor Sie beginnen
Um ein Berechtigungsprofil erstellen oder ändern zu können, müssen Sie die Rolle "Primary Administrator" annehmen oder zum Superuser wechseln.
Informationen zum Starten der Konsole finden Sie unter So nehmen Sie eine Rolle in der Solaris Management Console an. Führen Sie die Anweisungen im linken Fensterbereich aus, um in "Rights" (Berechtigungen) ein Berechtigungsprofil zu erstellen oder zu ändern. Ausführlichere Informationen finden Sie in der Onlinehilfe.
Mit diesem Befehl können Sie ein Berechtigungsprofil hinzufügen, ändern, anzeigen oder löschen. Der Befehl kann auf Dateien und in einem verteilten Name Service, wie NIS, NIS+ oder LDAP verwendet werden. Der Befehl smprofile wird als Client des Solaris Management Console-Servers ausgeführt.
$ /usr/sadm/bin/smprofile -D domain-name \ -r admin-role -l <Type admin-role password> \ add | modify -- -n profile-name \ -d description -m help-file -p supplementary-profile
Name der zu ändernden Domain
Name der administrativen Rolle, von der die Rolle geändert werden kann. Die administrative Rolle muss über die Autorisierung solaris.role.assign verfügen. Wenn Sie Ihre angenommene Rolle ändern, muss die Rolle über die Autorisierung solaris.role.delegate verfügen.
Eingabeaufforderung für das Passwort von admin-role
Trennzeichen zwischen Authentifizierungsoptionen und Unterbefehlsoptionen
Name des neuen Profils
Kurze Beschreibung des Profils
Name der HTML-Hilfedatei, die Sie erstellt und im Verzeichnis /usr/lib/help/profiles/locale/C hinzugefügt haben
Name eines bestehenden Berechtigungsprofils, das in diesem Berechtigungsprofil enthalten ist. Sie können mehrere Optionen des Typs -p supplementary-profile angeben.
Weitere Befehlsoptionen finden Sie auf der Manpage smprofile(1M).
Beispiel 9-19 Ändern eines Berechtigungsprofils über die Befehlszeile
In dem folgenden Beispiel wird das Berechtigungsprofil "Network Management" dem Berechtigungsprofil "Network Security" hinzugefügt. Die Rolle, die das Profil "Network Security" enthält, kann nun das Netzwerk und die Hosts konfigurieren sowie sicherheitsrelevante Befehle ausführen.
$ /usr/sadm/bin/smprofile -D nisplus:/example.host/example.domain \ -r primaryadm -l <Type primaryadm password> \ modify -- -n "Network Security" \ -d "Manage network and host configuration and security" \ -m RtNetConfSec.html -p "Network Management"
Der Administrator hat vor der Ausführung dieses Befehls die neue Hilfedatei RtNetConfSec.html erstellt und im Verzeichnis /usr/lib/help/profiles/locale/C abgelegt.
Beispiel 9-20 Erstellen eines neuen Berechtigungsprofils mit dem Tool "Rights"
Die folgende Tabelle enthält Beispieldaten für das hypothetische Berechtigungsprofil "Build Administrator". Dieses Berechtigungsprofil enthält die Befehle im Unterverzeichnis /usr/local/swctrl/bin. Diese Befehle verfügen über eine effektive UID von 0. Das Berechtigungsprofil "Build Administrator" ist für Administratoren nützlich, die Builds und die Versionen bei der Entwicklung von Software verwalten.
|
Allgemeine Fehler
Überprüfen Sie Folgendes, wenn das Berechtigungsprofil die Rolle mit den erwarteten Fähigkeiten nicht enthält:
Werden die Berechtigungsprofile der Rolle in der GUI in der richtigen Reihenfolge vom stärksten bis zum schwächsten Profil aufgeführt?
Wenn beispielsweise das Berechtigungsprofil All sich in der Liste an erster Stelle befindet, werden keine Befehle mit Sicherheitsattributen ausgeführt. Ein Profil, das Befehle mit Sicherheitsattributen enthält, muss in der Liste vor dem Berechtigungsprofil All aufgeführt werden.
Ist ein Befehl mehrmals in den Berechtigungsprofilen der Rolle enthalten? Wenn das der Fall ist, hat die erste Instanz des Befehls alle benötigten Sicherheitsattribute?
Beispielsweise können für bestimmte Befehlsoptionen Berechtigungen erforderlich sein. Damit die Optionen, für die Berechtigungen erforderlich sind, ausgeführt werden können, müssen die Berechtigungen der ersten Instanz im Profil mit den meisten Rechten zugewiesen sein.
Verfügen die Befehle in den Berechtigungsprofilen der Rolle über geeignete Sicherheitsattribute?
Wenn die Richtlinie suser lautet, benötigen einige Befehle uid=0 statt euid=0, um erfolgreich ausgeführt werden zu können.
Wurde der Name Service-Cache svc:/system/name-service-cache neu gestartet?
Der Dämon nscd kann über eine längere Aktivitätszeit verfügen. Durch einen Neustart des Dämons wird der Name Service mit den neuesten Daten aktualisiert.
Zu den Benutzereigenschaften gehören Passwort, Berechtigungsprofile, Rollen und Autorisierungen. Die sicherste Methode, einem Benutzer administrative Fähigkeiten zuzuweisen, besteht darin, ihm eine Rolle zuzuordnen. Informationen hierzu finden Sie unter Sicherheitsüberlegungen bei direkter Zuweisung von Sicherheitsattributen.
Bevor Sie beginnen
Sie müssen entweder eine Rolle annehmen, die das Berechtigungsprofil "Primary Administrator" enthält, oder zum Benutzer root wechseln.
Informationen zum Starten der Konsole finden Sie unter So nehmen Sie eine Rolle in der Solaris Management Console an. Führen Sie die Anweisungen im linken Fensterbereich aus, um in "User Accounts" (Benutzerkonten) einen Benutzer zu ändern. Ausführlichere Informationen finden Sie in der Onlinehilfe.
Tipp - Es ist nicht empfehlenswert, Benutzern Autorisierungen, Berechtigungen oder Berechtigungsprofile direkt zuzuweisen. Stattdessen sollten Benutzern Rollen zugewiesen werden. Die Benutzer können dann eine Rolle annehmen und privilegierte Vorgänge ausführen.
Mit diesem Befehl werden die Attribute eines Benutzers geändert, der im lokalen Name Service definiert ist.
$ usermod -R rolename username
Name der vorhandenen lokalen Rolle
Name eines vorhandenen, lokalen Benutzers, den Sie ändern möchten.
Weitere Befehlsoptionen finden Sie auf der Manpage usermod(1M).
Dieser Befehl ändert die Attribute eines Benutzers in einem verteilten Name Service wie NIS, NIS+ oder LDAP. Dieser Befehl wird als Client des Solaris Management Console-Servers ausgeführt.
$ /usr/sadm/bin/smuser -D domain-name \ -r admin-role -l <Type admin-role password> \ modify -- -n username -a rolename
Name der zu ändernden Domain
Name der administrativen Rolle, von der die Rolle geändert werden kann. Die administrative Rolle muss über die Autorisierung solaris.role.assign verfügen. Wenn Sie Ihre angenommene Rolle ändern, muss die Rolle über die Autorisierung solaris.role.delegate verfügen.
Eingabeaufforderung für das Passwort von admin-role
Trennzeichen zwischen Authentifizierungsoptionen und Unterbefehlsoptionen
Name des Benutzers, dem rolename zugewiesen wird
Name der Rolle, die Sie username zuweisen. Sie können mehrere Optionen des Typs -a rolename angeben.
Weitere Befehlsoptionen finden Sie auf der Manpage smuser(1M).
Beispiel 9-21 Ändern der RBAC-Eigenschaften eines lokalen Benutzers über die Befehlszeile
In diesem Beispiel kann der Benutzer jdoe die Rolle "System Administrator" nun annehmen.
$ usermod -R sysadmin jdoe
Diese Rolle wird den Rollen hinzugefügt, die der Benutzer annehmen kann.
Beispiel 9-22 Ändern der RBAC-Eigenschaften eines Benutzers mit dem Befehl smuser
In diesem Beispiel werden dem Benutzer jdoe die beiden Rollen "System Administrator" und "Operator" zugewiesen. Da der Benutzer und die Rollen lokal definiert werden, wird die Option -D nicht benötigt.
$ /usr/sadm/bin/smuser -r primaryadm -l <Type primaryadm password> \ modify -- -n jdoe -a sysadmin -a operadm
In dem folgenden Beispiel ist der Benutzer im NIS-Name Service definiert. Daher ist die Option -D erforderlich. Zwei Rollen sind im Name Service definiert. Eine Rolle, root, ist lokal definiert.
$ /usr/sadm/bin/smuser -D nis:/examplehost/example.domain \ -r primaryadm -l <Type primaryadm password> \ modify -- -n jdoe -a sysadmin -a operadm -a root
Eine Legacy-Anwendung ist ein Befehl oder ein Satz von Befehlen. Die Sicherheitsattribute sind für jeden Befehl in einem Berechtigungsprofil eingestellt. Das Berechtigungsprofil wird dann in eine Rolle eingeschlossen. Ein Benutzer, der eine Rolle annimmt, kann die Legacy-Anwendung mit den Sicherheitsattributen ausführen.
Informationen zum Hinzufügen von Legacy-Anwendungen zur Solaris Management Console finden Sie unter Adding Tools to the Solaris Management Console in System Administration Guide: Basic Administration.
Bevor Sie beginnen
Sie müssen die Rolle "Primary Administrator" annehmen oder Superuser sein, um die Sicherheitsattribute eines Befehls in einem Berechtigungsprofil zu ändern.
Informationen zum Starten der Konsole finden Sie unter So nehmen Sie eine Rolle in der Solaris Management Console an. Führen Sie die Anweisungen im linken Fensterbereich aus, um in "Rights" (Berechtigungen) ein Berechtigungsprofil zu ändern. Ausführlichere Informationen finden Sie in der Onlinehilfe.
Gehen Sie wie bei allen anderen Befehlen vor, um einer Legacy-Anwendung Sicherheitsattribute hinzuzufügen. Fügen Sie den Befehl mit Sicherheitsattributen einem Berechtigungsprofil hinzu. Weisen Sie einem Legacy-Befehl die Sicherheitsattribute euid=0 oder uid=0 zu. Ausführliche Informationen zu dem Verfahren finden Sie unter So erstellen oder ändern Sie ein Berechtigungsprofil.
Weitere Informationen zum Hinzufügen von Berechtigungen zu einer Rolle finden Sie unter So ändern Sie die Eigenschaften einer Rolle.
Beispiel 9-23 Hinzufügen von Sicherheitsattributen zu Befehlen in einem Skript
Wenn zur erfolgreichen Ausführung eines Befehls in einem Skript das setuid-Bit oder das setgid-Bit eingestellt werden muss, müssen die Sicherheitsattribute für die ausführbare Datei des Skripts und für den Befehl einem Berechtigungsprofil hinzugefügt werden. Anschließend wird das Berechtigungsprofil zu einer Rolle hinzugefügt und die Rolle einem Benutzer zugewiesen. Wenn der Benutzer die Rolle annimmt und das Skript ausführt, wird der Befehl mit den Sicherheitsattributen ausgeführt.
Informationen zum Hinzufügen von Sicherheitsattributen zu einem Befehl oder einem Shell-Skript finden Sie unter So erstellen oder ändern Sie ein Berechtigungsprofil.
Beispiel 9-24 Überprüfen von Autorisierungen mit einem Skript oder Programm
Um ein Skript für Autorisierungen zu erstellen, müssen Sie einen Test hinzufügen, der auf dem Befehl auths basiert. Weitere Informationen zu diesem Befehl finden Sie auf der Manpage auths(1).
Mit der folgenden Zeile wird beispielsweise getestet, ob der Benutzer über die als $1-Argument angegebene Autorisierung verfügt:
if [ `/usr/bin/auths|/usr/xpg4/bin/grep $1` ]; then echo Auth granted else echo Auth denied fi
Der Vollständigkeit halber sollte der Test Logik enthalten, die mit Platzhaltern nach anderen Autorisierungen sucht. Um beispielsweise zu testen, ob der Benutzer über die Autorisierung solaris.admin.usermgr.write verfügt, müssen Sie nach diesen Zeichenfolgen suchen:
solaris.admin.usermgr.write
solaris.admin.usermgr.*
solaris.admin.*
solaris.*
Wenn Sie ein Programm schreiben, testen Sie die Autorisierung mithilfe der Funktion getauthattr().