Peterzz 11 Posted February 14, 2017 Report Share Posted February 14, 2017 (edited) Ich bin gerade dabei mir ein Powershell Script zu schreiben, das mir u.a. den Profilordner (wir benutzen roaming profiles) auf einer Freigabe löschen soll. Das Problem ist nur, dass ich erst Rechte auf den Profilordner vergeben muss, damit dieser gelöscht werden kann. Der Teil des Scriptes zum Vergeben der Rechte sieht momentan wie folgt aus: $IdentityReference="Servername\Administrator" $FileSystemAccessRights=[System.Security.AccessControl.FileSystemRights]::FullControl $InheritanceFlags=[System.Security.AccessControl.InheritanceFlags]::ContainerInherit -bor [System.Security.AccessControl.InheritanceFlags]::ObjectInherit $PropagationFlags=[System.Security.AccessControl.PropagationFlags]::None $AccessControl=[System.Security.AccessControl.AccessControlType]::Allow $AccessRule=NEW-OBJECT System.Security.AccessControl.FileSystemAccessRule ($IdentityReference,$FileSystemAccessRights,$InheritanceFlags,$PropagationFlags,$AccessControl) $ProfilOrdnerACL=GET-ACL $Userdata.ProfilePath $ProfilOrdnerACL.AddAccessRule($AccessRule) SET-ACL –path $Userdata.ProfilePath -AclObject $ProfilOrdnerACL Das Script liest den Profilpfad aus einem AD-Objekt (Parameter beim Starten des Scriptes) aus und soll nun das Recht "FullControl" vergeben dem Administrator geben. Ich habe nun das Problem, dass das Profil nicht unterhalb des im AD angegebenen Profilpfades liegt, sondern in dem Profilpfad + der Endung .v2. Kann mir jemand dabei helfen, wie ich mein Script umbauen muss, damit am dem Profilpfad die Endung .v2 steht und die Rechte richtig gesetzt werden können? Edited February 14, 2017 by Peterzz Quote Link to comment
BOfH_666 577 Posted February 14, 2017 Report Share Posted February 14, 2017 (edited) Peter, mit NEW-ITEM –path $Userdata.ProfilePath -type directory -force erzeugst Du einen neuen Ordner. Soll das so sein? Ich habe es so verstanden, dass Du einen existierenden entfernen wolltest !? Mit Join-Path -Path 'hier den Teil, den Du schon hast' -ChildPath 'hier den zusätzlichen Teil' kann man sich einen korrekten Pfad zusammenbauen. Siehe auch Join-Path -Online Oder Du benutzt einfache String-Operationen: $ProfilOrdner = $($Userdata.ProfilePath) + '.v2' Edited February 14, 2017 by BOfH_666 Quote Link to comment
Peterzz 11 Posted February 15, 2017 Author Report Share Posted February 15, 2017 Vielen Dank, ich werde es damit versuchen. Gruß Peter Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.