无法删除Active Directory对象

我一直试图解决这个谜,但我想我已经走到了一个死胡同。

我们已经将用户创build和pipe理委派给一个组。 此权限应用于祖父级OU并inheritance到父OU和子OU,它们包括除完全控制删除以外的所有内容( 删除子树已标记)。

OU结构

来自组的用户可以在所有OU上创build和修改用户,但是他们只能从子OU(最后一级)删除用户。 如果他们试图从其他OU中删除一个用户,他们会得到一个访问被拒绝的错误。

我已经检查过的东西:

  • “保护对象免于意外删除”不被检查。
  • 比较使用来自不同OU的对象的有效权限,它们是相同的,不包括删除权限,但包括删除子树权限。
  • 使用dsacls.exe从不同的OU中导出用户的ACL。 这些文件是相同的。

我到目前为止看到的奇怪的事情:

  • 在根OU上有一个明确的拒绝删除(适用于后代用户对象) 。 不应该这也阻止从子OU中删除用户?

我猜这与删除子树权限有关,但我还没有find关于它的许多信息。 再多一点,域function级别是2008 R2,如果有帮助的话。

你的问题是在“根”(正确地称为“祖父母”)OU明确定义的Deny delete权限,并删除它应该解决您的问题。 这是很难遵循确切的OU结构,哪些权限是明确的,哪些是从您的描述inheritance(一张图片是值得几千字),但对我来说听起来像:

在root / grandparent OU中有明确的Deny delete 。 它只在根目录中运行,而在一个层次下运行。

这是因为:

  1. Deny delete仅适用于后代对象的第一级别(所以它由父级OUinheritance,而不是子OU),或者
  2. 后代对象的第二级别(在子OU中)具有较高优先级的“ Allow delete权限。

要解决此问题并允许组删除要删除的对象,请删除根OU上的Deny delete权限,或将其设置为仅应用于OU对象(而不是其后代对象)。

这里有一个方便的链接,指向NTFS中的权限优先级信息 (也适用于AD权限):


以下是解决权限冲突的一些规则:

  1. “拒绝”权限通常优先于“允许”权限。
  2. 直接应用于对象的权限(显式权限)优先于从父级inheritance的权限(例如来自组)。
  3. 从近亲inheritance的权限优先于从远程前辈inheritance的权限。 因此,从对象的父文件夹inheritance的权限优先于从该对象的“祖父”文件夹inheritance的权限,依此类推。
  4. 来自同一级别的不同用户组的权限(直接设置或inheritance,以及“拒绝”或“允许”)是累积的。 因此,如果用户是两个组的成员,其中一个具有“读”的“允许”权限,另一个具有“写”的“允许”,则用户将具有读取和写入权限 – 取决于上面的其他规则,当然。

虽然拒绝权限通常优先于权限,但情况并非总是如此。 明确的“允许”权限可以优先于inheritance的“拒绝”权限。

权限的优先级层次结构可以概括如下,列表顶部列出了更高的优先级权限:

  • 显式拒绝
  • 显式允许
  • inheritanceDeny
  • inheritance允许

同样如此:

文件权限将覆盖文件夹权限,除非完全控制权限已被授予该文件夹。