1. Oracle Solaris ZFS-Dateisystem (Einführung)
2. Erste Schritte mit Oracle Solaris ZFS
3. Unterschiede zwischen Oracle Solaris ZFS und herkömmlichen Dateisystemen
4. Verwalten von Oracle Solaris ZFS-Speicher-Pools
5. Installieren und Booten eines Oracle Solaris ZFS-Root-Dateisystems
6. Verwalten von Oracle Solaris ZFS-Dateisystemen
7. Arbeiten mit Oracle Solaris ZFS-Snapshots und -Klonen
8. Schützen von Oracle Solaris ZFS-Dateien mit Zugriffskontrolllisten und Attributen
Neues Solaris-Modell für Zugriffskontrolllisten
Syntaxbeschreibungen zum Setzen von Zugriffskontrolllisten
Vererbung von Zugriffskontrolllisten
Eigenschaften von Zugriffskontrolllisten (aclinherit)
Setzen und Anzeigen von Zugriffskontrolllisten an ZFS-Dateien im ausführlichen Format
Festlegen der Vererbung von Zugriffskontrolllisten an ZFS-Dateien im ausführlichen Format
Setzen und Anzeigen von Zugriffskontrolllisten an ZFS-Dateien im Kompaktformat
9. Delegierte Oracle Solaris ZFS-Administration
10. Fortgeschrittene Oracle Solaris ZFS-Themen
11. Problembehebung und Pool-Wiederherstellung in Oracle Solaris ZFS
In ZFS bestehen Zugriffskontrolllisten aus einer Folge von Zugriffskontrolllisteneinträgen. ZFS bietet ein reines Zugriffskontrolllistenmodell, in dem alle Dateien eine Zugriffskontrollliste besitzen. Normalerweise sind solche Zugriffskontrolllisten gewöhnlich, da sie nur die herkömmlichen UNIX-Einträge owner/group/other repräsentieren.
ZFS-Dateien besitzen zwar trotzdem Zugriffsrecht-Bits und einen Zugriffsmodus files, diese stellen jedoch einen "Speicher" des Inhalts der entsprechenden Zugriffskontrollliste dar. Wenn Sie also die Zugriffsrechte einer Datei ändern, wird die entsprechende Zugriffskontrollliste automatisch aktualisiert. Darüber hinaus kann nach dem Entfernen einer komplexen Zugriffskontrollliste, mit der ein Benutzer Zugriff auf eine Datei bzw. ein Verzeichnis hatte, wegen der Zugriffsrecht-Bits dieser Datei bzw. dieses Verzeichnisses, die einen Zugriff für alle Benutzer festlegten, dieser Benutzer unter Umständen noch immer Zugriff auf diese Datei bzw. dieses Verzeichnis haben. Alle Entscheidungen in Sachen Zugriffskontrolle werden von den Zugriffsrechten der Zugriffskontrollliste dieser Datei bzw. dieses Verzeichnisses festgelegt.
Die grundlegenden Regeln zum Zugriff auf ZFS-Dateien mithilfe von Zugriffskontrolllisten sind wie folgt:
ZFS verarbeitet Zugriffskontrolllisteneinträge in der Reihenfolge, wie sie in der Zugriffskontrollliste aufgeführt sind (d. h. von oben nach unten).
Es werden nur Zugriffskontrolllisteneinträge berücksichtigt, deren Benutzer-ID mit der ID des Zugriff anfordernden Benutzer übereinstimmt.
Wenn ein Zugriffsrecht einmal gewährt wurde, kann es durch nachfolgende Zugriffskontrolllisteneinträge in der gleichen Zugriffskontrollliste nicht mehr rückgängig gemacht werden.
Eigentümern von Dateien wird stets bedingungslose das Zugriffsrecht write_acl auch dann gewährt, wenn es in der Zugriffskontrollliste explizit verweigert wird. Nicht angegebene Zugriffsrechte werden verweigert.
Falls Zugriffsrechte verweigert werden bzw. Angaben zum betreffenden Zugriffsrecht fehlen, legen die Zugriffsrechte des betreffenden untergeordneten Systems fest, welche Rechte dem Eigentümer einer Datei bzw. dem Superuser gewährt werden. Dadurch wird verhindert, dass der Zugriff für Dateieigentümernicht gesperrt wird und Superuser Dateien aus Gründen der Wiederherstellung ändern können.
Wenn Sie für ein Verzeichnis eine komplexe Zugriffskontrollliste setzen, wird diese nicht automatisch an untergeordnete Verzeichnisse dieses Verzeichnisses vererbt. Wenn Sie für ein Verzeichnis eine komplexe Zugriffskontrollliste setzen und diese an die untergeordneten Verzeichnisse dieses Verzeichnisses vererbt werden soll, müssen Sie die Zugriffskontrolllisten-Vererbungsflags verwenden. Weitere Informationen finden Sie in Tabelle 8-3 und unter Festlegen der Vererbung von Zugriffskontrolllisten an ZFS-Dateien im ausführlichen Format.
Erstellen einer neuen Datei und (je nach dem Wert von umask) einer gewöhnlichen Standard-Zugriffskontrollliste ähnlich wie im folgenden Beispiel:
$ ls -v file.1 -rw-r--r-- 1 root root 206663 Jun 23 15:06 file.1 0:owner@:read_data/write_data/append_data/read_xattr/write_xattr /read_attributes/write_attributes/read_acl/write_acl/write_owner /synchronize:allow 1:group@:read_data/read_xattr/read_attributes/read_acl/synchronize:allow 2:everyone@:read_data/read_xattr/read_attributes/read_acl/synchronize :allow
In diesem Beispiel besitzt jede Benutzerkategorie (owner@, group@, everyone@) einen Zugriffskontrolllisteneintrag.
Im Folgenden finden Sie eine Beschreibung dieser Datei-Zugriffskontrollliste:
Der Eigentümer kann den Dateiinhalt lesen und ändern ( read_data/write_data/append_data/read_xattr). Der Eigentümer kann darüber hinaus auch Dateiattribute wie z. B. Zeitstempel, erweiterte Attribute und Zugriffskontrolllisten ändern (write_xattr/read_attributes/write_attributes/ read_acl/write_acl). Zusätzlich dazu kann der Eigentümer die Datei-Eigentümerschaft ändern (write_owner:allow).
Das Zugriffsrecht synchronize ist zurzeit nicht implementiert.
Der Gruppe wird die Berechtigung zum Lesen der Datei bzw. der Dateiattribute gewährt (read_data/read_xattr/read_attributes/read_acl:allow).
Allen übrigen Benutzern und Gruppen wird die Berechtigung zum Lesen der Datei bzw. der Dateiattribute gewährt (read_data/read_xattr/read_attributes/read_acl/synchronize:allow ). Das Zugriffsrecht synchronize ist zurzeit nicht implementiert.
Erstellen eines neuen Verzeichnisses und (je nach dem Wert von umask) einer standardmäßigen Verzeichnis-Zugriffskontrollliste ähnlich wie im folgenden Beispiel:
$ ls -dv dir.1 drwxr-xr-x 2 root root 2 Jun 23 15:06 dir.1 0:owner@:list_directory/read_data/add_file/write_data/add_subdirectory /append_data/read_xattr/write_xattr/execute/read_attributes /write_attributes/read_acl/write_acl/write_owner/synchronize:allow 1:group@:list_directory/read_data/read_xattr/execute/read_attributes /read_acl/synchronize:allow 2:everyone@:list_directory/read_data/read_xattr/execute/read_attributes /read_acl/synchronize:allow
Im Folgenden finden Sie eine Beschreibung dieser Verzeichnis-Zugriffskontrollliste:
Der Eigentümer kann den Inhalt des Verzeichnisses lesen und ändern (list_directory/read_data/add_file/write_data/add_subdirectory/append_data ), durchsuchen (execute) und die Dateiattribute wie z. B. Zeitstempel, erweiterte Attribute und Zugriffskontrolllisten lesen und ändern (/read_xattr/write_xattr/read_attributes/write_attributes/read_acl/write_acl ). Zusätzlich dazu kann der Eigentümer die Verzeichnis-Eigentümerschaft ändern (write_owner:allow).
Das Zugriffsrecht synchronize ist zurzeit nicht implementiert.
Die Gruppe kann den Inhalt und die Attribute des Verzeichnisses auflisten und lesen. Außerdem kann die Gruppe den Verzeichnisinhalt durchsuchen (list_directory/read_data/read_xattr/execute/read_attributes/read_acl/synchronize:allow ).
Allen übrigen Benutzern und Gruppen wird die Berechtigung zum Lesen und Durchsuchen des Verzeichnisinhalts und der Verzeichnisattribute gewährt (list_directory/read_data/read_xattr/execute/read_attributes/read_acl/synchronize:allow ). Das Zugriffsrecht synchronize ist zurzeit nicht implementiert.