PowerShell: Set-ACL auf Freigaben

Vor kurzem habe ich im Rahmen eines Projektes ein PowerShell Skript erstellt, das anhand einer Excel Tabelle Ordner auf einem Fileserver erstellt, Active Directory Gruppen dazu anlegt und entsprechende Berechtigungen auf den Ordnern für diese neuen Gruppen vergibt. Dabei hatte ich das Problem, dass immer auf der obersten File-Ebene (also z.B. \Server\Share1) das Setzen der Berechtigungen dazu führte, dass alle vererbten Berechtigungen verloren gingen.

Ich vermutete zuerst, dass ich irgend einen Fehler beim Setzen der Berechtigungen gemacht habe, doch es tritt ausschließlich auf dem freigegebenen Ordner auf, auf Unterordnern funktioniert das einwandfrei. Mit dem folgenden Skript kann man das Verhalten ganz einfach provozieren:

Das Skript liest die ACL des Ordners aus und schreibt sie direkt ohne Änderung wieder zurück. Dadurch gehen die vererbten Berechtigungen verloren und der Zugriff auf den Ordner ist nicht mehr möglich. In den Einstellungen von Windows sieht es allerdings so aus, als sei die Vererbung noch aktiv:

PowerShell_Set-AclNach einiger Recherche zeigte sich, dass das schon dem ein oder anderen aufgefallen ist, es allerdings immer mit Workarounds umgangen wurde, wie etwa das Skript lokal auf dem betroffenen Server laufen zu lassen. Das war allerdings in meiner Situation nicht möglich, da Ordner auf diversen Fileservern gepflegt werden mussten.

weiterlesenPowerShell: Set-ACL auf Freigaben

%d Bloggern gefällt das: