Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

powershell:berechtigungenps

Berechtigungen filtern und ändern

Script zum finden der Ordner. Erstellt eine CSV

$folders = get-childitem c:\local
"" > logfile.txt
 
foreach ($folder in $folders)
{
	$acl = get-acl $folder.FullName
	foreach ($rule in $acl.access)
	{
		if ($rule.IdentityReference.Value -eq "Jeder")
		{
			$folder.fullname + ";" + $rule.IdentityReference.Value + ";" + $rule.FileSystemRights >> logfile.txt
		}
	}
}

Entfernt "Jeder" aus den Dateiberechtigungen und bricht die Vererbung auf

$folders = get-childitem "D:\User-Profiles"
$logfile = "C:\Administration\profile\logfile.txt"
"" > $logfile
$Username = "Jeder"
foreach ($folder in $folders)
{
                $folder.Fullname
                $acl = get-acl $folder.FullName
                $isFound = $false
                $acl.SetAccessRuleProtection($true,$true)
                Set-ACL $folder.FullName $acl
                $acl = get-acl $folder.FullName
                "-----------------------------------------------------------------------" >> $logfile
                foreach ($rule in $acl.access)
                {
                               if ($rule.identityreference.value -eq $Username)
                               {
                                               $acl.removeaccessruleall($rule)                              
                                               "Jeder gefunden in " + $Folder.FullName >> $logfile
                                               $isFound = $true
                               }
                }
                if ($isFound)
                {
                               $ACL.Access >> $logfile
                               Set-ACL $folder.FullName $acl
                }
#             $x = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown")                                     
}

powershell/berechtigungenps.txt · Zuletzt geändert: 2016/04/02 00:48 (Externe Bearbeitung)