0

我需要比较 AD 用户权限(一个用户可以“取消设置”一个属性而另一个不能,两者都可以更改它)。

如何转储/比较user account > Security > Advanced > Effective Permissions使用 powershell 访问(并选择用户帐户)时找到的用户帐户“有效权限”?

4

2 回答 2

3

为 Active Directory使用Quest Free PowerShell 命令很简单:

Get-QadPermission useraccountname -Inherited 

或更好的方法:

Get-QADUser -Name useraccountname -SecurityMask DACL | Get-QADPermission -Inherited -SchemaDefault

这将返回为用户“useraccountname”分配的所有有效权限继承或显式

可以用 进行比较compare-object。一个非常简单的例子:

compare-object (Get-QADPermission userA -Inherited | select Rights) (Get-QADPermission userB -Inherited | select rights)
于 2012-05-30T13:45:24.620 回答
2

我们曾经遇到过类似的情况,需要知道谁可以删除我们的一个主要 OU,因此我们认为也许应该将 ACL 转储到 OU 上,并查找对该对象具有删除权限的每个人。当然 dsacls 在这方面很有帮助,我们可以轻松地将 ACL 转储到它上面。

但是,当我们开始查看 ACL 时,我们发现它有将近 60 个权限条目,其中大约有六个拒绝条目,其中一些是直接的,另一些是继承的。我们最初没有考虑拒绝,并提出了一个大约 200 名可以删除 OU 的用户的列表,但这似乎不对(;它似乎太高了。)然后,我们意识到我们必须将拒绝与允许!

因此,我们将所有拒绝权限和所有允许权限都展平,但随后我们必须弄清楚哪些拒绝将适用,因为其中一些是继承的,而且我相信继承的那些不会否定任何直接允许,所以花了一些更艰苦的工作,在做的时候我们意识到一些继承的权限不适用于对象,所以我们必须从头开始!

最后,我们几乎放弃了,当我问我们的一位企业管理员时,他说我们需要做的是确定我们 OU 的有效权限,他将我们指向Active Directory 用户和计算机快照中的有效权限选项卡-在。

因此,我们启动了 ADUC 并导航到“有效权限”选项卡,并认为只需在某处单击“确定”即可。但是,我们很快意识到需要我们单独输入每个人的姓名。现在,我们的环境中有近 2000 人,所以我们无法将 2000 人的名字一一列出。另一件事是,即使对于一个人,它也会向我们显示该人的所有有效权限,并且在技术方面,我们必须进一步完善。

然后我们认为我们应该给 Powershell 一个机会,并查看了许多使用 Powerhsell 执行此操作的选项,但是使用 Powershell 确定 AD 中的有效权限并不容易,这令人失望。特别是,我们尝试了 Quest 的免费 PowerShell 命令Get-QadPermission useraccountname 和Get-QADUser -Name useraccountname,但我们很失望地看到这仅检索为给定用户指定的所有权限的列表。它没有透露授予用户的有效权限。我们发现自己必须从它返回的结果开始,然后手动尝试确定有效权限,这不值得我们花时间。

所以,我们几乎放弃了希望,但在退出之前,我们认为我们只需要在 Google 上搜索“ Active Directory 有效权限工具”,希望一定有一些东西可以为我们做到这一点。我很高兴我们这样做了,因为我们找到了一个可以完全满足我们需要的工具:找出我们 OU 的有效权限并让我们能够导出这些有效权限 -

http://www.paramountdefenses.com/goldfinger_capabilities_true_effective_permissions_for_active_directory.html

我们发现此工具(称为AD 的金手指)能够确定 Active Directory 对象的有效权限,并提供输出以便我们可以轻松查看对特定权限具有“有效权限”的所有用户的列表一个东西。例如,我们能够使用它来确定和枚举在我们感兴趣的 OU 上拥有“有效删除访问”权限的所有管理员的列表。

事实证明,它对我们很有帮助,也许它对你也有帮助。我只是想我会分享这个,因为我一直是dsacls路线,我不希望你经历我们在尝试手动执行此操作时所经历的同样痛苦。手动操作太痛苦了。

于 2013-02-21T19:47:14.413 回答