jeudi 13 juillet 2023

Exchange Online - Changer l'adresse SMTP par défaut - Ajouter des alias

 Pour différentes raisons (fusion d'entreprises, changement du domaine principal,...) il peut s'avérer nécessaire de devoir changer l'adresse de courriel par défaut des utilisateurs. Voici les lignes de commandes à executer.

Connect-ExchangeOnline
$MailboxesSMTP = (Get-EXOMailbox | Where-Object PrimarySmtpAddress -like '<Domain Name>')
ForEach($_ in $MailboxesSMTP){ $FirstStep = $_.EmailAddresses.replace('SMTP:','smtp:') ;`
                                 $ActualSMTP = 'smtp:'+$_.UserPrincipalName; `
                                 $DefaultSMTP = 'SMTP:'+$_.UserPrincipalName ; `
                                 $SecondStep = $FirstStep.replace($ActualSMTP,$DefaultSMTP)
Set-MailBox -identity $_.Identity -EmailAddresses $SecondStep}

 Dans le même contexte, il peut être nécessaire d'ajouter des alias.


Connect-ExchangeOnline
$AliasToApply = @(
	[PSCustomObject]@{
		UserPrincipalName="User1@domain"
		Emails=@("smtp:User1@domain")
	};
	[PSCustomObject]@{
	UserPrincipalName="User2@domain"
	Emails=@("smtp:alias1@domain";"smtp:alias2@domain")
	}
	)
	
ForEach($_ in $AliasToApply)
{$Mailbox = (Get-EXOMailbox -UserPrincipalName $_.UserPrincipalName) ;  $Alias = $Mailbox.EmailAddresses ; 
	ForEach($E in $_.Emails)
{$Alias.Add($E); Set-Mailbox -Identity $MailBox.Identity -EmailAddresses $Alias}}