PowerShell/Droit d'accès
PowerShell et scripts relatifs aux droits d'accès.
Liste des droits sur le contenu d'une arborescence
# Liste des droits de sécurité sur les dossiers et fichiers d'une arborescence # Création d'un fichier $FichierDestination = "C:\Support\PermissionListeTest.csv" $CheminRacine = "C:\Support\" # Entête de document $FichierEntete = "Chemin;IdentityReference;AccessControlType;IsInherited;InheritanceFlags;PropagationFlags;FilesystemRights" $FichierExiste = Test-Path $FichierDestination If ($FichierExiste -eq $True) {Remove-Item $FichierDestination} Add-Content -Encoding UTF8 -Value $FichierEntete -Path $FichierDestination $DossierListe = dir $CheminRacine -recurse | Where {$_.psiscontainer -eq $True} Foreach ($Dossier in $DossierListe) { $DroitListe = Get-ACL $Dossier.fullname | ForEach-Object { $_.Access } Foreach ($Droit in $DroitListe) { $FichierLigne = ($Dossier.Fullname, $Droit.IdentityReference, $Droit.AccessControlType, $Droit.IsInherited, $Droit.InheritanceFlags, $Droit.PropagationFlags, ($Droit.FileSystemRights -replace ',', '/' ) ) -join ";" Add-Content -Encoding UTF8 -Value $FichierLigne -Path $FichierDestination } }