powershell Exchange 2003:查询 ActiveDirectory 的 activesync、office 和描述?

发布于 2024-07-13 12:45:57 字数 964 浏览 3 评论 0原文

我使用 powershell 来提取 Exchange 2003 用户的列表,并根据用户的邮箱“LegacyDN”,我希望使用 LDAP 查询来提取他们的 activesyncenabled 属性 (msExchOmaAdminWirelessEnable)、描述和 Office; 然而,它似乎并不适合我。 有任何想法吗?

这是我查询 AD 属性的方式:

$allusers = get-wmiobject -class exchange_mailbox -namespace root\microsoftexchangev2 -computername srv02 | select mailboxdisplayname, legacyDN 

foreach ($user in $allusers) 
{
$obj = new-object psobject 
$exchangever = "2003" 

$tmp = [adsi]("LDAP://" + $user.legacydn) 

$obj | add-member -membertype noteproperty -name "Display Name" -value $user.mailboxdisplayname
$obj | add-member -membertype noteproperty -name "Office" -value $tmp.physicaldeliveryofficename 
$obj | add-member -membertype noteproperty -name "Description" -value $tmp.description 
$obj | add-member -membertype noteproperty -name "Activesync" -value $tmp.msExchOmaAdminWirelessEnable 

$allusersemail += $obj 

}

$alluseremail | export-csv \\srv02\logs\test.csv 

I'm using powershell to pull a list of exchange 2003 users and based on the user's mailbox "LegacyDN", I was hoping to use an LDAP query to pull their activesyncenabled property (msExchOmaAdminWirelessEnable), description, and office; however, it doesn't seem to be coming up for me. any ideas?

here is how i'm querying for the AD attributes:

$allusers = get-wmiobject -class exchange_mailbox -namespace root\microsoftexchangev2 -computername srv02 | select mailboxdisplayname, legacyDN 

foreach ($user in $allusers) 
{
$obj = new-object psobject 
$exchangever = "2003" 

$tmp = [adsi]("LDAP://" + $user.legacydn) 

$obj | add-member -membertype noteproperty -name "Display Name" -value $user.mailboxdisplayname
$obj | add-member -membertype noteproperty -name "Office" -value $tmp.physicaldeliveryofficename 
$obj | add-member -membertype noteproperty -name "Description" -value $tmp.description 
$obj | add-member -membertype noteproperty -name "Activesync" -value $tmp.msExchOmaAdminWirelessEnable 

$allusersemail += $obj 

}

$alluseremail | export-csv \\srv02\logs\test.csv 

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

不再见 2024-07-20 12:45:57

这是一种方法:

$search = System.DirectoryServices.DirectorySearcher

$search.filter = "(&(homeMDB=*)(objectcategory=user)(objectclass=user))"

$props = "mailNickName","displayName"," physicaldeliveryofficename","描述","msExchOmaAdminWirelessEnable"

$props | foreach { [void]$search.PropertiesToLoad.Add($_) }

$users = $search.findAll()

foreach($u in $users)

{

$DisplayName = @{name="DisplayName";表达式={$u .properties.item("DisplayName")}}

$Office = @{name="Office";表达式={$u.properties.item("physicaldeliveryofficename")}}

$Description = @{name="Description";表达式={$u.properties.item("描述")}}

$Activesync = @{name="Activesync";表达式={$u.properties.item("msExchOmaAdminWirelessEnable")}}

$u | 选择 $DisplayName、$Office、$Description、$Activesync

}

Here's one way:

$search = System.DirectoryServices.DirectorySearcher

$search.filter = "(&(homeMDB=*)(objectcategory=user)(objectclass=user))"

$props = "mailNickName","displayName","physicaldeliveryofficename","description","msExchOmaAdminWirelessEnable"

$props | foreach { [void]$search.PropertiesToLoad.Add($_) }

$users = $search.findAll()

foreach($u in $users)

{

$DisplayName = @{name="DisplayName";expression={$u.properties.item("DisplayName")}}

$Office = @{name="Office";expression={$u.properties.item("physicaldeliveryofficename")}}

$Description = @{name="Description";expression={$u.properties.item("Description")}}

$Activesync = @{name="Activesync";expression={$u.properties.item("msExchOmaAdminWirelessEnable")}}

$u | select $DisplayName,$Office,$Description,$Activesync

}

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文