如何查看 Active Directory (AD) 中任何对象的安全权限

继续阅读,了解如何使用 PowerShell 查看 AD 用户、组或任何其他对象的权限,以及如何通过 ADManager Plus 轻松完成此操作。

Windows PowerShell

  • 确定要查看权限的对象所在的域。
  • 创建并编译用于查看 AD 对象权限的脚本。在 PowerShell 中执行该脚本。
  • 用于将 AD 用户帐户的密码设置更改为“用户下次登录时必须更改密码”的示例脚本:
 已复制
$securityreport = @()
$schemaGUID = @{}
$ErrorActionPreference = 'SilentlyContinue' Get-ADObject -SearchBase (Get-ADRootDSE).schemaNamingContext -LDAPFilter '(schemaGUID=*)' -Properties name, schemaGUID | ForEach-Object {$schemaGUID.add([System.GUID]$_.schemaGUID,$_.name)} Get-ADObject -SearchBase "CN=Extended-Rights,$((Get-ADRootDSE).configurationNamingContext)" -LDAPFilter '(objectClass=controlAccessRight)' -Properties name, rightsGUID | ForEach-Object {$schemaGUID.add([System.GUID]$_.rightsGUID,$_.name)} $ErrorActionPreference = 'Continue' # Get a list of AD objects. $AOs = @(Get-ADDomain | Select-Object -ExpandProperty DistinguishedName) $AOs += Get-ADOrganizationalUnit -Filter * | Select-Object -ExpandProperty DistinguishedName $AOs += Get-ADObject -SearchBase (Get-ADDomain).DistinguishedName -SearchScope Subtree -LDAPFilter '(objectClass=*)' | Select-Object -ExpandProperty DistinguishedName ForEach ($AO in $AOs) { $securityreport += Get-Acl -Path "AD:\$AO" | Select-Object -ExpandProperty Access | Select-Object @{name='organizationalunit';expression={$AO}}, ` @{name='objectTypeName';expression={if ($_.objectType.ToString() -eq '00000000-0000-0000-0000-000000000000') {'All'} Else {$schemaGUID.Item($_.objectType)}}}, ` @{name='inheritedObjectTypeName';expression={$schemaGUID.Item($_.inheritedObjectType)}}, ` * } # Filter by single user and export to a CSV file. $User ='Username' $securityreport | Where-Object {$_.IdentityReference -like "*$User*"} | Select-Object IdentityReference, ActiveDirectoryRights, OrganizationalUnit, IsInherited -Unique | Export-Csv -Path "D:\report\permissions.csv" -NoTypeInformation
点击复制整个脚本

ADManager Plus

  • 导航至 Reports > Security Reports > AD objects accessible by Accounts
  • 选择您希望查看权限的 域和用户帐户。您甚至可以从 CSV 文件导入此列表。点击 Apply

截图

» 开始 30 天免费试用

本报告提供有关 AD 帐户访问权限的见解。

虽然使用 PowerShell 等本机工具查看 AD 对象权限看似简单,但存在一些限制:

  • PowerShell 脚本只能在安装了 Active Directory 域服务角色的计算机上运行。
  • 如果需要其他 AD 对象的权限,则需要编写新的复杂脚本。
  • 语法、参数和迭代必须正确。拼写错误或语法错误可能难以发现和纠正,尤其是当脚本较长时。

通过持续监控 AD 权限来降低安全风险

IT 管理员能够获取报告以查看和分析 AD 对象的权限非常重要。这有助于他们将用户从授予不必要日常工作权限的组中移除。

ADManager Plus 允许管理员通过其基于 Web 的 GUI 控制台,仅需几次鼠标点击即可获取详细的权限报告。它还提供计划和自动发送报告的选项。了解有关 AD 权限报告的更多信息,请点击 这里

通过专用报告全面控制 NTFS 权限和文件共享。

  获取 30 天免费试用。

开始您的 无脚本 AD 管理,报告和 自动化之旅 使用 ADManager Plus。

  •  
     
  • 提交即表示您同意根据 隐私政策 处理个人数据。

谢谢

您的下载将在 15 秒内自动开始。如未开始,点击此处手动下载。

相关 Powershell 操作指南:

Active Directory 管理和报告的一站式解决方案

电子邮件下载链接 Email the ADManager Plus download link