Exchange Online / Office365 : Contatti con indirizzi mail esterni ed interni in Exchange Online
In Exchange siamo abituati a creare un contatto quando vogliamo far apparire nella GAL il nome di una persona che però non ha una mailbox interna alla nostra azienda, così da assegnare una “visibilità” aziendale interna a chi possiede un indirizzo mail esterno.
Ad esempio in un azienda denominata Contoso con un dominio di posta contoso.com (dove abbiamo le mailbox antonio@contoso.com, paolo@contoso.com …) possiamo generare un contatto (visibile nella GAL di Contoso) per l’utente Paperino che punti alla sua mail paperino@outlook.com
Questa operazione è facilmente eseguibile anche in Exchange Online operando dalla Interfaccia Amministrativa di Exchange operando nel medesimo modo che utilizzeremmo con Exchange 2013 onPremise.
E’ però possibile anche superare i limiti della GUI ed impostare ulteriori parametri al nostro contatto come ad esempio un indirizzo mail interno associato al contatto. Nel nostro esempio un paperino@contoso.com che però inoltra semplicente le mail a paperino@outlook.com
Per far questo in Exchange Online è necessario utilizzare PowerShell.
Innanzi tutto dobbiamo utilizzare Remote PowerShell per connetterci ad Exchange Online.
Prerequisito essenziale è l’utilizzo di un computer con almeno Windows 7 Sp1 o Windows Server 2008R2 Sp1 e la presenza di .NET Framework 4.5 e Windows Management Framework 3.0 (già inclusi in Windows 8 e Server 2012)
Poi i passi da seguire sono i seguenti:
– lanciare una finestra Windows PowerShell elevata
– abilitare l’esecuzione di script con il comando:
Set-ExecutionPolicy RemoteSigned
– loggarsi con le credenziali amministrative di Exchange Online dopo l’esecuzione di:
$UserCredential = Get-Credential
– eseguire:
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection
– eseguire:
Import-PSSession $Session
A questo punto abbiamo una sessione PowerShell remota sul nostro Exchange Online.
Per continuare con il nostro esempio dovremo prima creare il contatto Paperino con:
New-MailContact -Alias paperino -DisplayName “Paperino” -ExternalEmailAddress paperino@outlook.com
E successivamente assegnarli un indirizzo mail interno con:
Set-MailContact -Identity paperino -EmailAddresses SMTP:paperino@contoso.com
Non ci resta che disconnettere la sessione remota PowerShell eseguendo:
Remove-PSSession $Session
E chiudere PowerShell !!!