datakid Asked: 2014-04-22 20:37:09 +0800 CST2014-04-22 20:37:09 +0800 CST 2014-04-22 20:37:09 +0800 CST 从用户对象获取OU管理状态? 772 在 Windows Server 2008 R2 AD 中,是否可以从用户对象中获取用户管理的 OU 列表,或者是否需要解析 OU 列表? (即,OU 管理的 User 对象上是否有表示,还是只是 OU 上的一个 var) active-directory 2 个回答 Voted Brad Bouchard 2014-04-22T21:21:37+08:002014-04-22T21:21:37+08:00 您无法从 AD 中的实际用户对象看到特定用户有权访问的 OU。但是,您可以在 PowerShell 中使用名为 DSACLS 的强大工具。您将以管理员身份运行 PowerShell,然后使用以下命令: dsacls "ou=nameofou,dc=域名,dc=com" 将 nameofou 和 domainname 替换为所需的 OU 和 AD 域。 有关更多帮助,请参见此处 DSACLS 下的部分:http: //blogs.technet.com/b/heyscriptingguy/archive/2012/03/12/use-powershell-to-explore-active-directory-security.aspx Best Answer HopelessN00b 2014-04-22T21:14:48+08:002014-04-22T21:14:48+08:00 不,用户帐户/对象不包含“该对象可以管理的事物”的属性。 权限由对象本身的 ACL/ACE(访问控制列表/访问控制条目)处理,它定义了哪些其他对象有权对持有 ACL 的对象执行哪些操作。 要找出给定用户有权管理的所有 OU,该方法是一个脚本,它扫描您的所有 OU,并返回目标用户具有您感兴趣的权限的那些(以及,彻底的,组您的用户是其中的成员)。 看起来 Ashley McGlone 提供了一个 PowerShell 脚本,它可以完成您需要的大部分工作,并为您提供闪亮的 csv 或 Excel 文件。当然,您可以在 PowerShell 控制台中执行相同的操作,针对您感兴趣的用户过滤结果,并更改返回的格式和属性,但是(无意冒犯)这对您来说似乎有点先进,而且我现在我有点被抨击了,所以我不会为你打气,但这将是一个相对简单的单行代码,其核心是Get-Aclcmdlet。
您无法从 AD 中的实际用户对象看到特定用户有权访问的 OU。但是,您可以在 PowerShell 中使用名为 DSACLS 的强大工具。您将以管理员身份运行 PowerShell,然后使用以下命令:
dsacls "ou=nameofou,dc=域名,dc=com"
将 nameofou 和 domainname 替换为所需的 OU 和 AD 域。
有关更多帮助,请参见此处 DSACLS 下的部分:http: //blogs.technet.com/b/heyscriptingguy/archive/2012/03/12/use-powershell-to-explore-active-directory-security.aspx
不,用户帐户/对象不包含“该对象可以管理的事物”的属性。
权限由对象本身的 ACL/ACE(访问控制列表/访问控制条目)处理,它定义了哪些其他对象有权对持有 ACL 的对象执行哪些操作。
要找出给定用户有权管理的所有 OU,该方法是一个脚本,它扫描您的所有 OU,并返回目标用户具有您感兴趣的权限的那些(以及,彻底的,组您的用户是其中的成员)。
看起来 Ashley McGlone 提供了一个 PowerShell 脚本,它可以完成您需要的大部分工作,并为您提供闪亮的 csv 或 Excel 文件。当然,您可以在 PowerShell 控制台中执行相同的操作,针对您感兴趣的用户过滤结果,并更改返回的格式和属性,但是(无意冒犯)这对您来说似乎有点先进,而且我现在我有点被抨击了,所以我不会为你打气,但这将是一个相对简单的单行代码,其核心是
Get-Acl
cmdlet。