尝试使用以下 cmd 删除 Exchange Server 2016 中 MailContacts 的电子邮件地址时:
Set-MailContact -Identity "bob" -EmailAddresses @{ remove="SMTP:[email protected]" } -EmailAddressPolicyEnabled $false
该命令在大多数情况下有效,但对于某些电子邮件地址它会失败:
“The proxy address "SMTP:[email protected]" is already being used by the proxy addresses or
LegacyExchangeDN of "domain.com/Exchange/Bob2". Please choose another
proxy address. “
运行命令:
Get-MailContact -Filter "EmailAddresses -eq '[email protected]'"
输出以下内容:
Name Alias RecipientType
---- ----- -------------
[email protected] bob?domain.com MailContact
Bob.Smith Bob.Smith MailContact
从联系人中删除该电子邮件地址的最佳方法是什么?
答案1
可能是其他收件人使用了该电子邮件地址(但为什么?)。无论如何,您需要手动解决冲突。
该错误会显示具有“问题” smtp 地址的帐户的身份,您可以在 ADUC 或 powershell 中找到他。首先bob
使用以下命令检查帐户使用的电子邮件地址:
Get-MailContact -Identity bob | fl DisplayName,EmailAddresses,Alias
你会收到类似这样的信息:
DisplayName : Bob Smith
EmailAddresses : {smtp:[email protected], SMTP:[email protected]}
Alias : bob
然后检查 Bob2 的邮箱和分配给他的电子邮件地址:
Get-Mailbox bob2 | fl DisplayName,EmailAddresses,Alias
预期输出(示例):
DisplayName : Bob Smith 2
EmailAddresses : {SMTP:[email protected]}
Alias : rogov.v.l
如果发现任何重复的电子邮件地址,则需要将其删除
答案2
我可以使用此方法删除重复的电子邮件地址:
$user = Get-ADObject -LDAPFilter "(name=bob)" -Properties proxyAddresses
Set-ADObject $user.DistinguishedName -Remove @{proxyAddresses="SMTP:[email protected]"}