1
我试图使用PowerShell更新目录用户的电子邮件地址。在PowerShell中使用ADSI更改用户邮件属性
我无法修改与下面的代码用户条目的邮件属性:
$BadUser = [adsi] $Account.Path
$BadUser.mail.Clear()
$BadUser.mail.Add($User.Email) | Out-Null
$BadUser.SetInfo()
的mail.Clear(),也不是mail.Add()似乎修改$ BadUser的与PowerGUI的调试时, 。
我有一个依赖QAD插件的工作版本,如果可能,我想避免使用它。
$suf = $AD.Parent.Substring(10)
Connect-QADService -Service "$($AD.dc[0]).$suf" -ErrorVariable AD_Conn_Error -ErrorAction Stop -WarningAction Stop | Out-Null
Set-QADObject $Account.Properties.distinguishedname[0] -ObjectAttributes @{mail=$User.Email} | Out-Null
Disconnect-QADService
原因我避免QAD:
- 我在8个域服务器
- ADSI让我保存在列表中的多个连接条目
- QAD可以连接1个搜索用户域一次
- ADSI似乎相对较快
- QAD有大批量崩溃的内存泄漏(1kB/s坏)
-
QAD是无法“确定”一些网友认为ADSI通过CN发现
即使邮件是一个集合,你必须指定一个字符串直接对它...违反直觉。谢谢。 – 2012-08-02 00:18:33
@JaredDeckard邮件不是一个集合。邮件是一种奇怪的属性,因为它不用于Exchange中的邮件路由。邮件路由中使用的一个集合是'proxyAddresses' – 2012-08-02 01:01:18