我正在尝试运行对邮箱具有“代理发送”权限的用户的报告。我正在使用以下代码,该代码工作正常:
$sa_user = Get-Mailbox -id <mailbox> | Get-ADPermission | where { ($_.ExtendedRights -like "*Send-As*") -and ($_.IsInherited -eq $false) }
但${sa_user.User}数据可能“毫无帮助”,我被要求提供更有用的数据(具体来说就是:部门、规范名称和显示名称)。
我想将$sa_user adpermission对象绑定到aduser对象,因为它具有报告所需的所有属性。
$ad_user = Get-ADUser -id $sa_user.identity
但是$sa_user.identity是用于邮箱的,而不是用户的。所以我尝试:
$ad_user = Get-ADUser -id $sa_user.User
型
但我只得到Get-ADUser cmdlet Identify找不到$sa_user. User给定的值的错误。
所以我的问题是我如何基于adpermission对象的可用属性得到aduser对象?...或者任何其他方法、快捷方式或中介来实现?
2条答案
按热度按时间svgewumm1#
d4so4syb2#
试试看
或
.
编辑2022年12月1日
在我注意到这种过滤方式可能会非常慢之后,我尝试了一些不同的方法。下面是循环到send-as授权用户/对象的完整代码。你只需要定义一个searchbase:
型