我在努力增加邮件别名(二级邮件地址?)作为交换给邮件联系人。我能够添加主SMTP和所有其他属性,但出于某种原因,我正在使用别名进行斗争。
这是我正在运行的命令。如果我将变量替换为手动输入的字符串(例如,"test@test.com"而不是$someAddress),则该命令可以正常工作,如下面的示例所示。这个命令不让工作(甚至找不到联系人):
Get-Mailcontact -filter {WindowsEmailAddress -eq $SomeonesWindowsEmailAddress} -Domaincontroller $domainController | Set-Mailcontact -EmailAddresses @{ Add = "smtp:$SomeAddress","SMTP:$PrimaryAddress" } -domaincontroller $domainController
#These are example variables only, but the output of the variables would be something like:
#$SomeonesWindowsEmailAddress outputs test.test@test.com
#$SomeAddress outputs test.alias@test.com但是,这种方法工作得很好:
Get-Mailcontact -filter {WindowsEmailAddress -eq "test.test@test.com"} -Domaincontroller $domainController | Set-Mailcontact -EmailAddresses @{ Add = "smtp:test.alias@test.com","SMTP:test.primary@test.com" } -domaincontroller $domainController我还试着用这种方式添加:
$script:ADContact_attrib = @{
'Name' = $contact_CN
'Displayname' = $fullName
'PrimarySMTPAddress' = $completeMailAddress
'Emailaddresses' = $SomeAddress
'ExternalEmailAddress' = $forwardMailAddress
'FirstName' = $tb_f.txt
'LastName' = $tb_e.txt
'OrganizationalUnit' = $OU
}
New-MailContact @ADContact_attrib -verbose -domaincontroller $domainController这实际上适用于主smtp,即使它位于变量中,但它不会将EmailAddresses部件添加到邮件联系人中。
(Powershell studio 2016)
发布于 2017-07-18 12:46:37
对于每个微软Technet,您不能在同一个命令中使用PrimarySMTPAddress和EmailAddresses:
PrimarySmtpAddress参数指定用于收件人的主返回电子邮件地址。如果在此cmdlet上可用,则不能在同一个命令中使用EmailAddresses和PrimarySmtpAddress参数。默认情况下,主地址与ExternalEmailAddress参数值相同。
所以我建议你做这样的事
Set-MailContact -Identity "$tb_l, $tb_f" -emailaddresses @{add=$someaddress}尽管身份将根据您的环境而改变。在我的世界里,一切都是最后的,首先。
https://stackoverflow.com/questions/45166212
复制相似问题