设置"写成员属性"在使用PowerShell的Active Directory对象上的ACL中

时间:2018-05-24 12:43:30

标签: powershell active-directory acl active-directory-group

我想以编程方式允许AD中给定的安全主体(用户或组)对AD组的member属性具有写入权限。

我假设它的形式是:

$GroupObject = Get-ADGroup $group
$ACL = Get-ACL AD:$GroupObject
$ACE = New-Object System.Security.AccessControl.ActiveDirectoryAccessRule (
    $manager,
    ...
)
$ACL.AddAccessRule($ACE)
Set-ACL -Path AD:$GroupObject -AclObject $ACL

我无法找到的文件是...需要做些什么才能使其发挥作用。即使潜水手动操作并检查生成的ACL对象也很困难!

1 个答案:

答案 0 :(得分:2)

您可以将此构造函数用于ActiveDirectoryAccessRulehttps://msdn.microsoft.com/en-us/library/cawwkf0x(v=vs.110).aspx

看起来应该是这样的:

$ACE = New-Object System.DirectoryServices.ActiveDirectoryAccessRule(
    $manager.SID,
    [System.DirectoryServices.ActiveDirectoryRights]::WriteProperty,
    [System.Security.AccessControl.AccessControlType]::Allow,
    "bf9679c0-0de6-11d0-a285-00aa003049e2",
    [DirectoryServices.ActiveDirectorySecurityInheritance]::All
)

请注意,您需要传递用户的SID($manager.SID)。

神秘的GUID是member属性的GUID。您可以通过查看Microsoft文档中的属性来查找。这是member的页面,您可以在其中找到“System-Id-Guid”:https://msdn.microsoft.com/en-us/library/ms677097(v=vs.85).aspx

相关问题