Próbuję naśladować działanie kliknięcia prawym przyciskiem myszy w folderze, ustawienie "Modyfikuj" w folderze i mając uprawnienia dotyczą określonego folderu i podfolderów i plików .Ustawianie flag dziedziczenia i propagacji za pomocą set-acl i powershell
Przeważnie używam Powershell, jednak dziedziczenie jest ustawiane tylko jako "podfoldery i pliki" zamiast całego "tego folderu, podfolderów i plików".
Czy jest jakiś niepubliczny znacznik dla System.Security.AccessControl.PropagationFlags, który ustawi to poprawnie?
Oto, nad czym pracuję do tej pory.
$Folders = Get-childItem c:\TEMP\
$InheritanceFlag = [System.Security.AccessControl.InheritanceFlags]::ContainerInherit -bor [System.Security.AccessControl.InheritanceFlags]::ObjectInherit
$PropagationFlag = [System.Security.AccessControl.PropagationFlags]::InheritOnly
$objType = [System.Security.AccessControl.AccessControlType]::Allow
foreach ($TempFolder in $Folders)
{
echo "Loop Iteration"
$Folder = $TempFolder.FullName
$acl = Get-Acl $Folder
$permission = "domain\user","Modify", $InheritanceFlag, $PropagationFlag, $objType
$accessRule = New-Object System.Security.AccessControl.FileSystemAccessRule $permission
$acl.SetAccessRule($accessRule)
Set-Acl $Folder $acl
}
Sporządziłem wykres mapowania między oknami dialogowymi uprawnień do plików i wynikającymi z nich uprawnieniami: http://bit.ly/inheritMatrix –
Proszę dodać modyfikację z poniższego kodu, aby to działało. – riahc3