【问题标题】:Security permissions of an OUOU的安全权限
【发布时间】:2015-08-14 14:32:00
【问题描述】:

我正在尝试自定义新 OU 属性中的安全部分。但我真的找不到任何可以直接修改该部分的东西。基本上我需要向该部分添加两个组,删除一个组并能够修改每个组的权限(允许或拒绝)。 我认为我可以访问权限

(Get-Acl $DistinguishedName).Access |
  Format-List identityreference, accesscontroltype, activedirectoryrights

但是不知道怎么修改。

【问题讨论】:

标签: powershell active-directory


【解决方案1】:

修改 AD ACL 的方式与修改其他 ACL 的方式相同。您只需要使用正确的 AccessRule 类型(在本例中为 ActiveDirectoryAccessRule)。

$dn  = 'CN=foo,OU=bar,DC=example,DC=org'
$sid = (Get-ADGroup -Identity 'groupname').SID

$acl = Get-Acl -Path "AD:$dn"

$ace = New-Object DirectoryServices.ActiveDirectoryAccessRule $sid,
         'ReadProperty', 'Allow', '00000000-0000-0000-0000-000000000000',
         'All', '00000000-0000-0000-0000-000000000000'

$acl.SetAccessRuleProtection($true, $true)  # remove inheritance
$acl.AddAccessRule($ace)

Set-Acl -Path "AD:$dn" -AclObject $acl

如果要修改现有的 ACE,则需要复制要保留的 ACE,使用修改后的设置重新创建要更改的 ACE,删除所有现有的 ACE(通过将 SetAccessRuleProtection() 的第二个参数更改为 $false ),然后添加新的、复制的和修改的 ACE。

【讨论】:

  • 这样我终于可以添加新的 ACE,但不知道如何删除 ACE,您有什么建议吗?我不想破坏已经存在的继承。
  • @Dimo 使用RemoveAccessRule()(参见here)。处理总是相同的,只是 ACE 类型根据您处理的对象类型而有所不同。您可以按照该文章中的说明构建与要删除的 ACE 匹配的 ACE,也可以选择匹配特定条件的规则并删除这些规则,例如$acl.Access | ? { $_.IdentityReference -eq 'DOMAIN\username' } | % { $acl.RemoveAccessRule($_) }。请注意,您不能在不破坏继承的情况下删除继承的 ACL。
  • 工作就像一个魅力。经过大量搜索,您的答案很完美。我要删除的 ACE 是保护 OU 不被意外删除的 ACE,我通过在创建新 OU 时将 -ProtectedFromAccidentalDeletion 设置为 $false 解决了这个问题。
  • 有没有办法在创建 ACE 时或之后设置 InheritanceFlags 和 PropagationFlags? $identity = (Get-ADGroup -Filter {name -eq "Name"}).SID $adRights = 'CreateChild, DeleteChild' $type = 'Allow' $objectType = '00000000-0000-0000-0000-000000000000' $inheritanceType = 'All' $inheritedObjectType = '00000000-0000-0000-0000-000000000000' $ace = New-Object System.DirectoryServices.ActiveDirectoryAccessRule $identity,$adRights,$type,$objectType,$inheritanceType,$inheritedObjectType 默认情况下(我认为)InheritanceFlagsContainerInheritPropagationFlagsNone
  • @Dimo 继承和传播标志通过inheritanceType 参数间接设置(请参阅here 了解可能的值)。
猜你喜欢
  • 2016-04-13
  • 2011-03-25
  • 2012-06-07
  • 1970-01-01
  • 1970-01-01
  • 2011-05-24
  • 1970-01-01
  • 2013-04-30
  • 2011-10-27
相关资源
最近更新 更多