Powershell: Primäre SMTP Adresse bei MailUser im bulk ändern
Bei der Aktivierung eines MailUser wird die externe SMTP Adresse als primäre SMTP Adresse gesetzt. Das war vom Kunden nicht gewünscht, da somit in der globalen Adressliste (GAL) die MailUser mit einer falschen E-Mail Adresse gelistet sind.
Das Skript prüft die primäre SMTP Adresse und korrigiert diese bei einer Abweichung.
Die Variablen $Server und $Domain sind zu setzen.
$server = "myex.test.net" $domain = "semi-precious.de" $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri "http://$($server)/PowerShell/" -Authentication Kerberos Import-PSSession $Session $wronguser = Get-MailUser | ? {$_.PrimarySmtpAddress -notlike "*$($domain)"} foreach ($user in $wronguser) { Set-MailUser $user.identity -EmailAddressPolicyEnabled $false write-host "found wrong MailAddress: $($user.PrimarySmtpAddress)" $newprimarysmtp = $user.PrimarySmtpAddress $wrongsmtp = $newprimarysmtp.split("@") $newprimarysmtp = $newprimarysmtp.replace($wrongsmtp[1],$domain) write-host "set to: $($newprimarysmtp)" Set-MailUser $user.identity -PrimarySmtpAddress $newprimarysmtp Set-MailUser $user.identity -EmailAddressPolicyEnabled $true } Remove-PSSession $Session