Con la dismissione da parte di Microsoft delle funzionalità legacy di SMTP relay in Office 365, le organizzazioni hanno bisogno di un’alternativa solida, scalabile e sicura per l’invio di email applicative. Azure Communication Services (ACS) offre una piattaforma moderna per email transazionali, di notifica e generate dai sistemi, supportando funzionalità avanzate di autenticazione, gestione dei domini e compliance.
Questo articolo vi guiderà nel processo di configurazione di ACS come nuovo SMTP relay, basandosi su passaggi di implementazione reali ed esperienza sul campo.
Azure Communication Services
Perché ACS? Azure Communication Services è una piattaforma cloud di Microsoft che fornisce API e SDK per integrare funzionalità di comunicazione multi-canale — come voice, video, chat, SMS ed email — direttamente all’interno di applicazioni, siti web o servizi aziendali. ACS è costruito sulla stessa infrastruttura affidabile e scalabile che alimenta Microsoft Teams, garantendo performance e sicurezza di livello enterprise.
ACS è ideale per le organizzazioni che vogliono modernizzare la comunicazione con clienti e utenti, sostituire sistemi legacy (come i vecchi SMTP relay) o abilitare nuovi scenari digitali senza dover costruire un’infrastruttura di comunicazione da zero.
Come funziona:
- APIs and SDKs: ACS offre REST API e librerie client per diversi linguaggi e piattaforme (JavaScript, .NET, iOS, Android). Questo consente agli sviluppatori di aggiungere facilmente funzionalità di comunicazione in tempo reale alle proprie soluzioni, senza dover avere competenze approfondite su tecnologie sottostanti come VoIP o media encoding.
- Multi-channel Support: È possibile integrare chiamate vocali, videochiamate, chat testuale, SMS ed email. ACS consente di acquisire numeri di telefono tramite Azure per SMS o chiamate, oppure di collegare domini email personalizzati per l’invio di email applicative.
- Scalability and Security: ACS è progettato per scalare automaticamente in base alle esigenze e rispetta i principali standard di sicurezza e privacy (HIPAA, GDPR, SOC 2).
- Identity Management: ACS è identity-agnostic, il che significa che puoi scegliere come autenticare e identificare gli utenti finali, integrando ACS con i tuoi sistemi di autenticazione.
- Teams Integration: ACS può essere integrato con Microsoft Teams, abilitando scenari in cui utenti esterni possono partecipare a meeting Teams tramite applicazioni personalizzate.
Deployment
Il primo passo è creare un resource group. Organizzate i componenti ACS all’interno di un resource group dedicato per semplificare la gestione e il tracciamento dei costi. Selezionate la subscription, la region, ed assegnate un nome significativo al resource group.

Nota: potete aggiungere i tag per il cost management o il tracciamento degli ambienti.
Ora possiamo creare un Email Communication Service: all’interno del resource group, aggiungete una nuova risorsa “Communication Services“. Questa fornirà le API e gli endpoint per email, SMS, chat e telephony.

Nota: alcune risorse sono globali e funzionano attraverso le region di Azure.

Per inviare email dal dominio della tua organizzazione, è necessario verificarne la proprietà:
- Add Domain: nelle impostazioni di ECS, aggiungi il tuo dominio personalizzato.
- DNS Verification: ti verrà richiesto di aggiungere un record TXT presso il tuo provider DNS.
- Verification: una volta propagato il record DNS, aggiorna il portale ECS per confermare che lo stato del dominio sia “Verified”.

Per una corretta autenticazione, è necessario configurare alcuni record DNS, in modo da garantire che le email siano considerate attendibili e non vengano contrassegnate come spam:
- SPF: assicuratevi che il record SPF del dominio includa i server Microsoft (ad esempio include:spf.protection.outlook.com). Se il dominio è già utilizzato in Microsoft 365, potrebbe essere già configurato.
- DKIM: abilitate la firma DKIM dal portale ECS. Potrebbe essere necessario aggiungere record CNAME come indicato.
- DMARC: (Opzionale ma consigliato) aggiungete un record DMARC nel DNS per una protezione aggiuntiva.
Una volta creati e validati i record, sarà possibile procedere.

Il passo successivo è la gestione dei MailFrom Addresses. Quando si configura Azure Communication Services per l’invio di email, per impostazione predefinita si può utilizzare solo l’alias DoNotReply; Microsoft applica questa limitazione per proteggere la reputazione di invio del dominio e prevenire spam o abusi. L’aumento graduale del volume di email e il monitoraggio dei tassi di consegna contribuiscono a garantire un invio affidabile.

Configurare Email Communication Service
Un Communication Service è una risorsa Azure creata all’interno di una subscription/resource group. Agisce come endpoint tecnico che ospita le funzionalità ACS per il tenant, esponendo endpoint, chiavi e superfici di configurazione (ad esempio Email, Telephony & SMS) utilizzate dalle applicazioni. Nel portale sono disponibili sezioni come Overview, Manage keys, Email, Telephony and SMS e SMTP Usernames su questa risorsa.
Per configurare un nuovo Communication Service, è necessario associarlo a un Resource Group.

Dopo questo passaggio, sarà possibile configurare la parte Email.

Nota: ogni Communication Service gestisce uno o più domini, ma il consiglio è creare una risorsa dedicata se si hanno più domini che devono inviare email.

Registrare una Application in Microsoft Entra
Ok, ma come può un’applicazione inviare email? Qual è la procedura per autenticare l’alias? La risposta è un’applicazione in Microsoft Entra. Per autenticare in modo sicuro le applicazioni con ACS, crea una nuova App Registration e generare un client secret per l’applicazione, che verrà utilizzata come password SMTP.

Roles and Permissions
Un passaggio critico nella configurazione di Azure Communication Services (ACS) per l’invio di email è assicurarsi che l’applicazione registrata disponga delle autorizzazioni necessarie per interagire con il servizio. Dopo aver creato la risorsa Communication Service in Azure, accedi alla sezione Access Control (IAM) nel portale Azure.
Qui è necessario assegnare il ruolo appropriato alla App Registration — tipicamente il ruolo “Communication and Email Service Owner“. Questa assegnazione concede all’applicazione i diritti necessari per inviare email tramite ACS, stabilendo una connessione sicura e autorizzata tra l’applicazione e l’infrastruttura di comunicazione. Seguendo questo processo, si garantisce che solo applicazioni affidabili possano utilizzare ACS per l’invio di email, mantenendo sicurezza e compliance all’interno dell’ambiente.

SMTP Usernames
L’ultimo passaggio consiste nell’aggiungere tutti gli username che si desidera autorizzare all’invio di email tramite ECS.

Selezionare l’applicazione Entra e l’indirizzo email che si desidera utilizzare. Ricordate che l’email inserita funzionerà esclusivamente con il secret configurato nella App Registration di Entra: è possibile usare la stessa identità per più account email, ma non è una buona pratica dal punto di vista della sicurezza.

Nota: fino a quando Microsoft non abiliterà l’uso di indirizzi personalizzati, il primo elemento creato deve essere DoNotReply. In ogni caso, è possibile preconfigurare tutte le App Registration e gli SMTP Username personalizzati.

Test Your Application
È arrivato il momento di testare la nuova configurazione. Create uno script PowerShell con queste impostazioni email:
- SMTP Server: smtp.azurecomm.net
- Port: 587
- Username: lo username SMTP creato (ad esempio DoNotReply@contoso.com)
- Password: il client secret della App Registration in Entra
Sbloccare i Custom Alias
Per utilizzare alias diversi da DoNotReply, è necessario aprire un ticket di supporto verso Microsoft. Verrete contattati per spiegare perché volete usare questa piattaforma e che tipo di email verranno inviate.

Una volta autorizzato l’uso di alias personalizzati, potrate inserirli nella sezione “MailFrom Addresses” di Azure Communication Services.
Nota: non dimenticare questo passaggio, altrimenti non sarà possibile inviare email verso l’esterno.
Cost Considerations
Fin qui tutto bene, ma qual è il costo del servizio? È possibile stimare i costi in base al volume di email previsto. Ad esempio, l’invio di 1.000.000 di email a €0,00024 per email, più i costi di storage in base alla dimensione del messaggio, può essere calcolato come segue: (1.000.000 * €0,00024) + (1.000.000 * 0,2 MB * €0,00012) = €253,75.
Conclusion
La migrazione da Office 365 SMTP ad Azure Communication Services modernizza l’invio delle email, migliora la sicurezza e prepara l’organizzazione alle future esigenze di comunicazione. Seguendo questi passaggi, potrate garantire una transizione fluida e sfruttare appieno il potenziale della piattaforma di comunicazione di Azure.

