Berechtigungen überprüfen
Um die Berechtigungen eines Ordners anzuzeigen, verwenden Sie den folgenden Befehl:
Get-Acl 'D:\Dienste\Scanbox' | Format-List
Datei- und Ordnerberechtigungen kopieren
Um Berechtigungen von einem Ordner auf einen anderen zu kopieren, müssen Sie Besitzer sowohl des Quellordners als auch des Zielordners sein. Verwenden Sie den folgenden Befehl, um die Berechtigungen vom Ordner „Accounting“ in den Ordner „Sales“ zu kopieren:
Get-Acl '\\fileserver\Daten' | Set-Acl '\\fileserver\Daten\Daten2'
Datei- und Ordnerberechtigungen festlegen
Verwenden Sie das PowerShell-Cmdlet „Set-Acl“, um die Berechtigungen für ein bestimmtes Element (wie eine Datei, einen Ordner oder einen Registrierungsschlüssel) zu ändern. Der folgende Code setzt die Berechtigung „Vollzugriff“ (FullControl) für den Benutzer „ENTERPRISE\H.Wurst“ auf „Zulassen“ (Allow) für den Ordner „Sales“:
$acl = Get-Acl '\\fileserver\Daten' $AccessRule = New-Object System.Security.AccessControl.FileSystemAccessRule("ENTERPRISE\H.Wurst", "FullControl", "Allow") $acl.SetAccessRule($AccessRule) $acl | Set-Acl '\\fileserver\Daten'
Benutzerberechtigungen löschen
Um eine Berechtigung zu löschen, verwenden Sie den Parameter „RemoveAccessRule“. Der folgende Code entfernt die Berechtigung „Vollzugriff zulassen“ (Allow FullControl) für den Benutzer H.Wurst vom Ordner „Sales“:
$acl = Get-Acl '\\fileserver\Daten' $AccessRule = New-Object System.Security.AccessControl.FileSystemAccessRule("ENTERPRISE\H.Wurst", "FullControl", "Allow") $acl.RemoveAccessRule($AccessRule) $acl | Set-Acl '\\fileserver\Daten'
Vererbung von Berechtigungen aktivieren oder deaktivieren
Um die Vererbung von Berechtigungen zu verwalten, verwenden Sie die Methode „SetAccessRuleProtection“. Der erste Parameter sperrt die Vererbung vom übergeordneten Ordner ($true
sperrt, $false
erlaubt), und der zweite Parameter bestimmt, ob die vererbten Berechtigungen beibehalten oder gelöscht werden sollen ($true
behalten, $false
löschen). Der folgende Code deaktiviert die Vererbung und löscht alle vererbten Berechtigungen für den Ordner „Sales“:
$acl = Get-Acl '\\fileserver\Daten' $acl.SetAccessRuleProtection($true, $false) $acl | Set-Acl '\\fileserver\Daten'