AD计算机对象上的Set-ACL

djs*_*akz 4 powershell acl active-directory

我正试图Set-Acl在AD中的计算机对象上.首先我使用以下方法获取ACL:

$acl = (Get-Acl AD:\'CN=Tester1,OU=Ou1,OU=OU2,OU=OU3,DC=Contoso,DC=com').Access
Run Code Online (Sandbox Code Playgroud)

这给了我该计算机对象的所有ACL.然后我用:

$acl.AddAccessRule((New-Object System.Security.AccessControl.FileSystemAccessRule("Computername","FullControl")))
Run Code Online (Sandbox Code Playgroud)

任何正确方向的指针都会有所帮助.我的目标是将计算机对象添加到计算机对象'Tester1'并为其提供完全访问权限.

Ans*_*ers 5

ActiveDirectory不是文件系统.您必须为AD对象创建新的ACE ActiveDirectoryAccessRule.

$path = "AD:\CN=Tester1,OU=Ou1,OU=OU2,OU=OU3,DC=Contoso,DC=com"
$acl = Get-Acl -Path $path
$ace = New-Object Security.AccessControl.ActiveDirectoryAccessRule('DOMAIN\Computername','FullControl')
$acl.AddAccessRule($ace)
Set-Acl -Path $path -AclObject $acl
Run Code Online (Sandbox Code Playgroud)