Ik heb het onderstaande PS scriptje geschreven. Dit scriptje dient ervoor om bij redirected profiles extra rechten toe te kennen aan de owner van de profielmap. Dit om als iemand anders (bijv een manager) een bestand toevoegd dat de user dan nog steeds rechten heeft aangezien hij niet de owner is van het nieuwe bestand wat door de manager bijv op zijn desktop is geplaatst.
Het script werkt echter prima, het draait op de fileserver zelf. Echter wanneer iemand op een RDS server voor het eerst inlogt en dus een profielmap voor hem wordt aangemaakt met de gebruiker als owner gebeurd er niets. Op de fileserver zelf zie ik in de console wel dat de map is gemaakt en zie ik step 2 t/m 5 gewoon netjes gelogd. Echter er worden geen rechten toegevoegd.
Eerst dacht ik dat het iets met te weinig rechten te maken zou kunnen hebben maar volgens mij kan dit niet aangezien het PS script zelf op de server draait met admin rechten.
Iemand wellicht een idee wat ik fout doe of wat ik over het hoofd zie? Ik zit een beetje vast..
Alvast
Het script werkt echter prima, het draait op de fileserver zelf. Echter wanneer iemand op een RDS server voor het eerst inlogt en dus een profielmap voor hem wordt aangemaakt met de gebruiker als owner gebeurd er niets. Op de fileserver zelf zie ik in de console wel dat de map is gemaakt en zie ik step 2 t/m 5 gewoon netjes gelogd. Echter er worden geen rechten toegevoegd.
Eerst dacht ik dat het iets met te weinig rechten te maken zou kunnen hebben maar volgens mij kan dit niet aangezien het PS script zelf op de server draait met admin rechten.
Iemand wellicht een idee wat ik fout doe of wat ik over het hoofd zie? Ik zit een beetje vast..
Alvast
PowerShell:
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
| $watcher = New-Object System.IO.FileSystemWatcher $watcher.Path = "F:\Profiles" ##Change this to the profile root folder $watcher.IncludeSubdirectories = $false $watcher.EnableRaisingEvents = $true $created = Register-ObjectEvent $watcher "Created" -Action { write-host "Created: $($eventArgs.FullPath)" Start-Sleep -Milliseconds 2000 $InheritanceFlag = [System.Security.AccessControl.InheritanceFlags]::ContainerInherit -bor [System.Security.AccessControl.InheritanceFlags]::ObjectInherit $PropagationFlag = [System.Security.AccessControl.PropagationFlags]::None Try { ##$currentowner = Get-Acl "F:\Profiles\Joanna" | select Owner $acl = Get-Acl $($eventArgs.FullPath) $currentowner = $acl.Owner $permission = $currentowner,"FullControl",$InheritanceFlag,$PropagationFlag,"Allow" write-host "Stap 2 $currentowner" $accessRule = new-object System.Security.AccessControl.FileSystemAccessRule $permission write-host "Stap 3" $acl.SetAccessRule($accessRule) write-host "Stap 4" $acl | Set-Acl $($eventArgs.FullPath) write-host "Stap 5" } Catch { $ErrorMessage = $_.Exception.Message write-host $ErrorMessage Break } } |