• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Die Bildungsoffensive hier im Forum geht weiter! Jetzt sollen Kreativität und technische Möglichkeiten einen neue Dimension erreichen. Das Thema in diesem Monat lautet - Verkehrte Welt - Hier geht es lang --> Klick

Defaultrechte?

peters1

Châtaigne du Léman
Registriert
15.07.09
Beiträge
832
Hallo,
ich habe OSXserver 2.2.2 (10.8.5) und möchte, dass beim Anlegen oder Kopieren von Dateien und Ordner, die Rechte vom darüberliegenden Ordner vererbt werden. Wenn meine Freudin einen Ordner anlegt und ein paar Fotos hineinspielt, kann ich nicht darauf zugreifen,weil nur der erstellende User Schreib-/Leserechte hat. Stattdessen sollte aber der darüberliegende Ordner genutzt werden. Dort ist abgelegt, dass alle Familienmitglieder schreibend darauf zugreifen können, genauso wie die Admin-User, alle anderen haben keine Rechte.
Das müsste bei Abteilungslaufwerken doch gang und gebe sein oder? Wie macht man das?
 

Marcel Bresink

Hochzeitsapfel
Registriert
28.05.04
Beiträge
9.272
Das macht man so, indem man eine Benutzergruppe anlegt, die die betreffenden Benutzer enthält.

Für diese Benutzergruppe legt man eine Zugriffssteuerungsliste auf dem Ordner an, für die volles Leserecht, volles Schreibrecht und alle Vererbungsoptionen (also dieser Ordner, Unterordner, Unterdateien, Unterebenen) aktiviert sind.
 
  • Like
Reaktionen: jesfro

peters1

Châtaigne du Léman
Registriert
15.07.09
Beiträge
832
Benutzergruppen habe ich angelegt und zugewiesen. Danach auch mit der Option "auf alle Unterobjekte übertragen ..." drüberkopiert. Die bestehenden Ordner und dateien passen alle, nur die neu angelegten sind ohne die restlichen User und Gruppen. Wo kann ich die Vererbungsoptionen bestimmen?
 

Marcel Bresink

Hochzeitsapfel
Registriert
28.05.04
Beiträge
9.272
Das hört sich nach Finder an. Berechtigungseinstellungen werden im Finder nur auf sehr naive Art verwaltet und dargestellt. Das kann sehr schnell zu größeren Fehlern führen.

Die korrekte Art auf dem Server Berechtigungen einzustellen, ist im Programm "Server" den Punkt "'Servername' > Speicher > Zahnradmenü > Zugriffsrechte bearbeiten" zu verwenden. Nach Anlegen einer neuen Zugriffssteuerungsliste hat man dort die Möglichkeit, auch auf die Vererbungsoptionen zuzugreifen.
 
  • Like
Reaktionen: peters1

peters1

Châtaigne du Léman
Registriert
15.07.09
Beiträge
832
Aha, alles klar. Dann werde ich das dort mal probieren. Vielen Dank.
 

peters1

Châtaigne du Léman
Registriert
15.07.09
Beiträge
832
Hmm, immer noch nicht klar. Ich kann bei Gruppen unter "Vererbung" angeben, was ich da haben will. Aber bei einzelnen Usern aber nicht. Muss ich daher für jeden User einen eigene Gruppe anlegen, damit ich dessen Rechte individuell nach unten brechen kann?

Und woher kommen die Rechte für andere? (gesetzt auf Lesen) Oder auch staff???
 

peters1

Châtaigne du Léman
Registriert
15.07.09
Beiträge
832
Noch was: Im Finder kann ich den einzelnen User löschen (Minus-Symbol), im Server-Programm sind dieser User, staff und Andere gegen Löschen gesichert. Warum die Unterschiede? Ich möchte auch bei "Andere" und "staff" keine Leserechte setzen.
 

Wuchtbrumme

Golden Noble
Registriert
03.05.10
Beiträge
22.290
Ich habe Deine vorliegende Frage einmal nachgestellt.

1. Finder: Neuen Ordner angelegt ("Familiendaten").
2. Server.app: Neuen Benutzer "Vater" angelegt
3. Server.app: Neuen Benutzer "Tochter" angelegt.
4. Server.app: Neue Gruppe "Familie" angelegt.
5. Server.app: Benutzer Vater und Tochter zu Familie (Gruppe) hinzugefügt.
6a. Terminal: ls -la /Volumes/Macintosh\ HD2/Familie
6b. chown -R Vater:Familie /Volumes/Macintosh\ HD2/Familie
6c. Server.app: Freigabe "Familiendaten" angelegt. Bearbeitet: Gruppe Famile Lesen + Schreiben, Andere sowie Administratoren (warum eigentlich?) kein Zugriff.
6d. Terminal: ls -la /Volumes/Macintosh\ HD2/Familie (die POSIX-Attribute sind von 755 root:_unknown auf 700 Vater:Familie gesprungen)
7. Finder, Server verbinden, Server auswählen, Benutzeraccount Vater einloggen (registrierter Benutzer), in der Freigabe Familie einen Ordner "Termine" anlegen, Laufwerk im Finder über den Eject-Button in der Seitenleiste auswerfen
8. Finder, Server verbinden, Server auswählen, Benutzeraccount Tochter einloggen (registrierter Benutzer), in der Freigabe Familie unter dem Ordner Termine einen weiteren Ordner "Steffi" anlegen, (die entstehenden Ordner werden mit Benutzer:Familie 755 gebaut).

Funktioniert.

Wir halten außerdem fest: Warum das eben funktioniert, kann wieder schwer jemand erklären. Nach Dateisystemberechtigungen (POSIX) kann es gar nicht gegangen sein, da hat die Gruppe Familie einfach mal ---. Also muß über die Freigabe eine gesonderte Authentifizierung gegen die ACL auf Dateisystemebene stattfinden.
 
  • Like
Reaktionen: peters1

Marcel Bresink

Hochzeitsapfel
Registriert
28.05.04
Beiträge
9.272
Hmm, immer noch nicht klar. Ich kann bei Gruppen unter "Vererbung" angeben, was ich da haben will. Aber bei einzelnen Usern aber nicht.

Nein, das stimmt nicht. Jedes Dateisystemobjekt hat immer 3 POSIX-Rechtedefinitionen (für den Eigentümer der Datei, für den Gruppeneigentümer der Datei und für alle Anderen) sowie beliebig viele Zugriffssteuerungseinträge.

Für die Zugriffssteuerungseinträge lassen sich Vererbungsoptionen einstellen, egal ob sie sich auf Benutzer oder Gruppen beziehen. Für die Eigentümer- und "Andere"-Einträge lassen sich keine Vererbungsoptionen einstellen, weil das im POSIX-Standard nicht vorgesehen ist.

Muss ich daher für jeden User einen eigene Gruppe anlegen, damit ich dessen Rechte individuell nach unten brechen kann?

Nein, die Definition von Rechten für individuelle Benutzer sollte grundsätzlich vermieden werden. Stell Dir vor, Du hättest ein Firmennetz mit 5000 Benutzern. Es wäre ein Albtraum, bei jeder Datei für jeden Benutzer die Zugriffsrechte einzeln auflisten zu müssen.

Und woher kommen die Rechte für andere?

Die Rechtedefinition für "Andere" muss bei jedem Dateisystemobjekt vorhanden sein und kann nicht gelöscht werden. Sie definiert sozusagen das Standardrecht für alle Parteien, die weder Eigentümer, noch Gruppeneigentümer, noch in einem Zugriffssteuerungseintrag aufgelistet sind.

Oder auch staff???

"staff" ist in diesem Fall der Gruppeneigentümer der Datei. Auch ein solcher Eintrag muss immer vorhanden sein. Die Gruppe "staff" ist eine ab Werk vorgesehene Standardgruppe, der alle normalen Benutzer angehören.

Noch was: Im Finder kann ich den einzelnen User löschen (Minus-Symbol),

Das ist wie gesagt eine naive Darstellung, die der Finder zur Vereinfachung anbietet, die aber zu gefährlichen Missverständnissen führen kann.

In Wirklichkeit lassen sich nur Zugriffssteuerungseinträge löschen. Die 3 vorgeschriebenen POSIX-Rechtedefinitionen bleiben immer erhalten.

im Server-Programm sind dieser User, staff und Andere gegen Löschen gesichert. Warum die Unterschiede?

Das Server-Programm ist für Profis gedacht und zeigt die echten Daten an, keine Vereinfachung.

Ich möchte auch bei "Andere" und "staff" keine Leserechte setzen.

Das lässt sich problemlos machen.
 
  • Like
Reaktionen: peters1

Marcel Bresink

Hochzeitsapfel
Registriert
28.05.04
Beiträge
9.272
Wir halten außerdem fest: Warum das eben funktioniert, kann wieder schwer jemand erklären.

Wie meinen? Das Verhalten von Benutzerrechten ist ganz klar definiert.

Nach Dateisystemberechtigungen (POSIX) kann es gar nicht gegangen sein, da hat die Gruppe Familie einfach mal ---. Also muß über die Freigabe eine gesonderte Authentifizierung gegen die ACL auf Dateisystemebene stattfinden.

Nein, die Frage, ob etwas freigegeben ist, spielt überhaupt keine Rolle und authentifziert (= Überprüfung der Echtheit einer anfragenden Partei, z.B. durch Abfrage eines Kennworts) wird hier auch nichts.

Korrekt ist: Bei jedem einzelnen Zugriff auf ein Dateisystemobjekt werden die effektiven Benutzer- und Gruppenwerte desjenigen Prozesses, der den Zugriff ausführt, gegen die Rechtedefinitionen des Objekts geprüft. Hierbei werden Zugriffssteuerungslisten von oben nach unten und dann Eigentümer, Gruppeneigentümer und Andere abgearbeitet. Der erste Eintrag, in dieser Liste, der passt, wird wirksam.

Wenn also für die Gruppe "Familie" ein ACE mit Lese-/Schreibrecht gesetzt ist, spielt es überhaupt keine Rolle, ob der Gruppeneigentümer "Familie" keine Rechte hat. Letzteres steht weiter unten in der Rechteprioritätsliste, wird also in diesem Beispiel niemals wirksam.
 

peters1

Châtaigne du Léman
Registriert
15.07.09
Beiträge
832
Hallo,
vielen Dank für die zahlreichen Infos. Das hilft mir schon mal weiter, wenngleich ich trotzdem noch einiges ausprobieren muss. Wie beschrieben, ist es unser Familienserver. Und jedes Mitglied der Familie hat eigene Rechte. Nicht wie in einem Unternehmen, bei dem mehrere Mitarbeiter gleiche Rechte haben. Ich muss also für jeden User eine Gruppe definieren, da ich ja auch individuelle Rechte vergeben möchte. Da ich es noch nicht direkt ausprobieren kann: Spricht etwas dagegen die Gruppe wie die User zu nennen oder müssen User- und Gruppennamen unterschiedlich sein? Beispiel: (User "Maria" kommt in Gruppe "Maria") Oder gibt es sinnvolle Konventionen dafür in OSX?

Die Reihenfolge bestimmt den Zugriff oder das erste erfolgreiche Zugriffsrecht? Könnte man nicht alle Rechte mit logisch ODER verknüpfen und dann wäre die Reihenfolge egal?
Wenn ein User in 3 Gruppen enthalten ist, die alle einem Objekt zugewiesen sind, jedoch nur in der letzten Gruppe ein Leserecht eingeräumt wird, müsste der User ja lesen dürfen, korrekt?
Und wie setze ich die Standardrechte für "Andere" und "Staff"? Dann müsste ich diese Gruppe und diesen User in dem Wurzelobjekt definieren und dort auf "Keine Rechte" setzen und vererben lassen (mit Server-App). Die beiden Objekte "Andere" und "Staff" hatte ich nämlich vorher schon mit dem Finder gelöscht, noch bevor ich den Server installiert hatte. :( Was hat das illegale Löschen dieser Objekte denn für Auswirkungen? :confused:
 

Marcel Bresink

Hochzeitsapfel
Registriert
28.05.04
Beiträge
9.272
Ich muss also für jeden User eine Gruppe definieren, da ich ja auch individuelle Rechte vergeben möchte.

Nein. Natürlich kann man auch für Benutzer beliebige Rechte einzeln definieren (zusätzlich neben den Rechten des Objekteigentümers). Man versucht das nur wann immer es geht zu vermeiden, weil sich das als nicht praxisgerecht herausgestellt hat.

Spricht etwas dagegen die Gruppe wie die User zu nennen oder müssen User- und Gruppennamen unterschiedlich sein?

Da spricht nichts gegen, aber das ist wie gesagt völlig unnötig.

Die Reihenfolge bestimmt den Zugriff oder das erste erfolgreiche Zugriffsrecht?

Nochmal: Zuerst wird die Liste der Zugriffssteuerungseinträge von oben nach unten abgearbeitet und dann die Liste der POSIX-Rechte in der Reihenfolge Eigentümer, Gruppeneigentümer, Andere. Die erste passende Übereinstimmung gilt. Es gibt darüberhinaus sogenannte kanonische Sortierungsregeln, nach denen innerhalb der Zugriffssteuerungsliste Verbotseinträge üblicherweise vor Erlaubniseinträgen stehen.

Könnte man nicht alle Rechte mit logisch ODER verknüpfen und dann wäre die Reihenfolge egal?

Nein, denn einzelne Zugriffssteuerungseinträge dürfen sich widersprechen und die Definition von "Andere" wäre dann nicht mehr möglich.
Wenn Du z.B. "Maria hat Vollzugriff" und "Maria darf nicht schreiben" in die Liste einfügst, ist das ein Widerspruch, der nur durch die Reihenfolge aufgelöst werden kann.

Wenn ein User in 3 Gruppen enthalten ist, die alle einem Objekt zugewiesen sind, jedoch nur in der letzten Gruppe ein Leserecht eingeräumt wird, müsste der User ja lesen dürfen, korrekt?

Das ist ein anderes gutes Beispiel. Auch hier gilt: Die Reihenfolge innerhalb der Rechteliste legt fest, was der User darf. Möglicherweise darf der User nicht lesen.

Und wie setze ich die Standardrechte für "Andere" und "Staff"? Dann müsste ich diese Gruppe und diesen User in dem Wurzelobjekt definieren und dort auf "Keine Rechte" setzen und vererben lassen (mit Server-App).

Vererben geht nicht, da dies wie gesagt POSIX-Rechte sind. Aber Du meinst vermutlich "manuell einmal nach unten übertragen".

Die beiden Objekte "Andere" und "Staff" hatte ich nämlich vorher schon mit dem Finder gelöscht, noch bevor ich den Server installiert hatte. :( Was hat das illegale Löschen dieser Objekte denn für Auswirkungen? :confused:

Wie gesagt geht das in Wirklichkeit gar nicht, aber der Finder tut so, als könnte er das. Er bastelt dann mithilfe von Rechtedefinitionen etwas, was der Benutzer gemeint haben könnte. Das kann sogar in jeder Version von OS X anders sein. Eine mögliche Lösung für "staff" wäre hier in diesem Beispiel, dass der Finder "keine Rechte" als POSIX-Recht für den Gruppeneigentümer einstellt. Eine andere Lösung wäre aber auch, dass stattdessen für die Gruppe "staff" ein "Verbot für alle Rechte" an irgendeiner Stelle in die Zugriffssteuerungsliste einsortiert wird.

Genau deshalb ist das Arbeiten mit Berechtigungen im Finder so gefährlich: Man hat überhaupt keine Kontrolle, was genau passiert. Der Finder führt garantiert keine illegalen Operationen aus, aber aufgrund seiner naiven Präsentation der Rechte gibt es so viele Mehrdeutigkeiten, dass er quasi auf eigene Faust eine Umsetzung der Rechte auswählt, die meist ganz anders ist, als man haben wollte.

Um die wirklichen Rechte anzuzeigen, musst Du entweder Server.app, die Kommandozeile oder bessere Programme als den Finder verwenden.
 
  • Like
Reaktionen: peters1

peters1

Châtaigne du Léman
Registriert
15.07.09
Beiträge
832
Vielen lieben Dank. Werde mich am Wochenende mal hinsetzen und das alles ausprobieren. Schade nur, dass die Timemaschine nicht schnallt, dass ich nur ein paar Bits bei den Zugriffsrechten geändert habe. Die sichert danach gleich wieder den gesamten Datenbestand neu. :D
 

peters1

Châtaigne du Léman
Registriert
15.07.09
Beiträge
832
Ok, habe wieder ein bisschen herumprobiert. Ich arbeite nur noch mit der Server-App bei Server/Festplatte.
Wenn ich Rechte meinen Gruppen zuweisen möchte, kann ich eine Gruppe nur an der Spitze der Liste einfügen. Auch ein späteres Verschieben innerhalb der Liste funktioniert nicht. Wie soll ich denn so eine Reihenfolge für den Zugriff pflegen? Alles löschen und bei null wieder anfangen kann ich nicht glauben. Mit shift / cmd / alt etc. kann ich auch nichts verschieben!?
 

Marcel Bresink

Hochzeitsapfel
Registriert
28.05.04
Beiträge
9.272
Oh, es sieht so aus, als hätte Apple diese Möglichkeit in den neueren Versionen des Programms Server.app entfernt.

Dann muss man auch hier eine alternative Software verwenden oder die Reihenfolge mit Löschen/Hinzufügen ändern.

Wenn man die Rechte vernünftig, also widerspruchsfrei, konzipiert, braucht man eine manuelle Umsortierung aber auch eher selten. Apple unterstützt weiterhin die Funktion, automatisch eine kanonische Sortierung einzustellen (siehe entsprechender Menüpunkt im Zahnrad-Pop-Up).
 

peters1

Châtaigne du Léman
Registriert
15.07.09
Beiträge
832
Hallo, ok, dann bin ich nicht zu blöd die Verschiebeoption zu finden. ;) Stimmt auch, dass, wenn man es einmal richtig gesetzt hat, kaum Änderungen vornehmen muss. Ich habe es jetzt mit meiner Handvoll Gruppen zusammengebastelt und es läuft. Danke.