Bonjour
afin de faire réaffecter des utilisateurs de l'AD sur les répertoires Personnel avec les bons Droits
je doit parcourir le répertoire \\serveur\USERS et casser les droits pour bien les remettre
les droits au niveau des répertoires sont fait par héritages
en le faisant a la main cela fonctionne mais sur 6000 répertoires cela est très fastidieux
mon problème est que le propriétaire du répertoire initiale $proprio.Owner n'est pas récupérer mais que mon compte admin apparait comme étant le propriétaire empêchant le propriétaire légitime de saisir quoi que ce soit
exemple
lvl1 = trucmuche
lvl2 = trucmuche
lvl 3+ = moi
voici le code
merci pour votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 Import-Module -Name NTFSSecurity $Repertoire_Depart="\\serveur\USERS" $Liste_Objet_Niv1 = Get-ChildItem2 -Path $Repertoire_Depart -Directory forEach ($Dossier in $Liste_Objet_Niv1.fullname) { $Dossier = $Liste_Objet_Niv1.FullName $Error_acces = $false try { $proprio = Get-NTFSOwner -Path $Dossier } catch { $Error_acces = $true } If ($Error_acces -eq $false) { $Objet_Dossier = Get-Item2 $Dossier Write "*********************************************************************" Write "Traitement du Dossier $Objet_Dossier" # Attribution des Droit a l'Administrateur Write-host "Attribution de l'utilisateur Administrateur" Set-NTFSOwner -Account 'BUILTIN\Administrateurs' -Path $Objet_Dossier.FullName Get-ChildItem2 $Objet_Dossier -Recurse | Select-Object fullname | Set-NTFSOwner -Account 'BUILTIN\Administrateurs' # Suppression des Héritages Write-host "Suppression des Héritages" Disable-NTFSAccessInheritance -Path $Objet_Dossier.FullName -RemoveInheritedAccessRules Disable-NTFSAuditInheritance -Path $Objet_Dossier.FullName -RemoveInheritedAccessRules # Ajout acces Pour Admin Write-host "Ajout acces Pour Admin" Add-NTFSAccess -Path $Objet_Dossier.FullName -Account 'BUILTIN\Administrateurs' -AccessRights FullControl -AppliesTo ThisFolderSubfoldersAndFiles Get-ChildItem2 $Objet_Dossier -Recurse | Select-Object fullname | Add-NTFSAccess -Account 'BUILTIN\Administrateurs' -AccessRights FullControl -AppliesTo ThisFolderSubfoldersAndFiles # Réaffectation Du Propriétaire Write-host "Réaffectation Du Propriétaire" Get-Item2 $Objet_Dossier | Select-Object fullname | Set-NTFSOwner -Account $proprio.Owner Get-ChildItem2 $Objet_Dossier -Recurse -Directory | Select-Object fullname | Set-NTFSOwner -Account $proprio.Owner Get-ChildItem2 $Objet_Dossier -Recurse -File | Select-Object fullname | Set-NTFSOwner -Account $proprio.Owner # Rétablissement de l'héritage Write-host "Rétablissement de l'héritage" Enable-NTFSAccessInheritance -Path $Objet_Dossier.FullName -RemoveExplicitAccessRules Enable-NTFSAuditInheritance -Path $Objet_Dossier.FullName -RemoveExplicitAccessRules Get-ChildItem2 $Objet_Dossier -Recurse -Directory | Select-Object fullname | Enable-NTFSAccessInheritance -RemoveExplicitAccessRules Get-ChildItem2 $Objet_Dossier -Recurse -Directory | Select-Object fullname | Enable-NTFSAuditInheritance -RemoveExplicitAccessRules Get-ChildItem2 $Objet_Dossier -Recurse -File | Select-Object fullname | Enable-NTFSAccessInheritance -RemoveExplicitAccessRules Get-ChildItem2 $Objet_Dossier -Recurse -File | Select-Object fullname | Enable-NTFSAuditInheritance -RemoveExplicitAccessRules } }
Partager