如何用PowerShell修改AD中邮件联系人的employeeNumber属性?
使用PowerShell修改AD邮件联系人的employeeNumber属性
由于employeeNumber是Active Directory的原生属性,Exchange的Set-MailContact和Set-Contact cmdlet并未暴露该参数,因此需要借助Active Directory PowerShell模块的命令来操作。
修改已有邮件联系人的employeeNumber
可以通过Get-MailContact定位联系人,再通过管道传递给Set-ADObject来更新属性:
# 定位联系人并设置employeeNumber Get-MailContact -Identity "目标联系人名称/邮箱" | Set-ADObject -Replace @{employeeNumber="EMP12345"}
也可以直接使用联系人的DistinguishedName来指定对象:
Set-ADObject -Identity "CN=张三,OU=外部联系人,DC=company,DC=com" -Replace @{employeeNumber="EMP12345"}
新建邮件联系人时同步设置employeeNumber
如果需要在创建联系人的同时设置employeeNumber,可以分两步操作:
- 用Exchange cmdlet创建邮件联系人
- 立即用AD cmdlet设置属性
# 创建邮件联系人 New-MailContact -Name "李四" -ExternalEmailAddress "lisi@external.com" -OrganizationalUnit "OU=外部联系人,DC=company,DC=com" # 同步设置employeeNumber Get-MailContact -Identity "李四" | Set-ADObject -Replace @{employeeNumber="EMP67890"}
或者直接通过AD模块创建联系人,再启用邮件功能:
# 创建AD联系人并设置employeeNumber和邮箱 New-ADObject -Type contact -Name "王五" -Path "OU=外部联系人,DC=company,DC=com" -OtherAttributes @{mail="wangwu@external.com"; employeeNumber="EMP01234"} # 启用邮件功能 Enable-MailContact -Identity "王五"
注意事项
- 需要提前安装RSAT-AD-PowerShell模块(Windows服务器可通过角色功能安装,客户端可通过设置-应用-可选功能安装)
- 操作账号需要具备修改AD联系人属性以及Exchange邮件联系人的权限
内容的提问来源于stack exchange,提问作者markdem
相关产品推荐
相关产品推荐

