我想将TestUsers组织单位的控制权委托给用户NickA,并为其提供以下权限:
>创建,删除和管理用户帐户
>重置用户密码并在下次登录时强制更改密码
>阅读所有用户信息
>创建,删除和管理组
>修改组的成员身份
我找到的唯一方法是以下,但我找不到正确的权限分配:
$acc = Get-ADUser NickA $sid = new-object System.Security.Principal.SecurityIdentifier $acc.SID $guid = new-object Guid bf967aba-0de6-11d0-a285-00aa003049e2 $ou = Get-ADOrganizationalUnit -Identity TestUsers $acl = Get-ACL -Path "AD:$($ou.DistinguishedName)" $acl.AddAccessRule($(new-object System.DirectoryServices.ActiveDirectoryAccessRule $sid,"CreateChild,DeleteChild","Allow",$guid)) Set-ACL -ACLObject $acl -Path "AD:$($ou.DistinguishedName)"
我还没有使用PowerShell处理ACL构建,但是这可以使用旧的DSACLS命令来完成,该命令是自Windows Server 2003以来RSAT和支持工具的一部分.
dsacls "OU=Test,DC=domain,DC=com" /I:S /G "domain\user:CA;Reset Password";user
将委派的OU的DN放在引号之间,并将用户放在/ G(grant)参数之后. / I:S参数告诉ACE仅继承子对象,CA参数代表Control Access.
有关语法的更多信息可以在TechNet或其他网站上找到.如果您需要使用PowerShell,请查看Update ACL Active Directory Provider documentation.