Hallo zusammen,
ich möchte ein Powershell-Skript schreiben, welches einen bestimmten Benutzer (admUser) auf eine bestimmte Organizational Unit in einer bestimmten Weise berechtigt.
Mein bisheriger Ansatz verwendet .NET-Objekte:
$act = [System.Security.AccessControl.AccessControlType]::Allow
$adrights = [System.DirectoryServices.ActiveDirectoryRights]::"GenericRead|GenericWrite|FullControl|..."
$inherit = [System.DirectoryServices.ActiveDirectorySecurityInheritance]::SelfAndChildren
$who = New-Object -TypeName System.Security.Principal.NTAccount -ArgumentList "", "Domain\admUser"
$newrule1 = New-Object -TypeName System.DirectoryServices.ActiveDirectoryAccessRule -ArgumentList $who,$adrights,$act,$inherit $objSecurity.AddAccessRule($newrule1)
$objPerm.psbase.CommitChanges() Soweit klappt das auch ganz gut, allerdings möchte ich auf diese Weise Berechtigungen granularer vergeben, heisst, ich möchte festlegen, dass
- der Benutzer admUser nur Benutzerobjekte anlegen und löschen darf
oder
- der Benutzer admUser nur Printerobjekte anlegen und löschen darf
Bedeutet im Endeffekt, dass Special Permissions auf Container vergeben werden müssen und genau da liegt mein Problem, wie bewerkstellige ich das.
Voraussetzung ist dabei noch, dass Windows Powershell v1 verwendet wird und auch nicht die 76 neuen AD-CmdLets vom 2k8R2 zur Verfügung stehen
Ich würde mich freuen, wenn mir jemand hilfreiche Tips geben könnte, wie ich dieses kleine Problem lösen kann...
Viele Grüße