Email integratie - ​​Microsoft SMTP Send as App

Gemaakt door Mark Duijkers, Gewijzigd op Ma, 23 Jun om 9:39 AM op Mark Duijkers

Disclaimer: Atabix Solutions is niet verantwoordelijk voor wijzigingen in uw Microsoft Azure-omgeving. Wees altijd kritisch op de instellingen die u toepast en controleer of deze geschikt zijn voor uw specifieke omgeving. Houd er rekening mee dat informatie over Microsoft Azure verouderd kan zijn. Raadpleeg daarom altijd de officiële documentatie van Microsoft. 

Introductie 


Dit document is ter informatie hoe Microsoft SMTP mail moet worden ingesteld. Via de accounts applicatie kan een mail account worden toegevoegd.  De optie voor Microsoft SMTP is “Microsoft SMTP Send as App”. 


Voor deze optie is net als bij “Microsoft Graph API” een app id, app secret en tenant id nodig. 

De overige velden voor smtp zijn optioneel en de standaardwaarden zouden goed moeten zijn. 


Microsoft SMTP mail wordt verstuurd via het SMTP protocol in plaats van via de Graph API. 

De Graph API wordt alleen gebruikt om een access token op te vragen en met deze token word de mail dan via het SMTP protocol verstuurd. 


https://learn.microsoft.com/en-us/exchange/client-developer/legacy-protocols/how-to-authenticate-an-imap-pop-smtp-application-by-using-oauth 


Stap 1: App registration & setup 

In de eerste stap voegen we een app toe in Microsoft Azure en stellen we de juiste rechten in. 

 

  1. Login bij Microsoft Azure portal 
    https://portal.azure.com/ 
  2. Open “App registrations” (via zoekbalk) 
    Maak een nieuwe app aan “+ New registration” 
    Vul een naam in en klik op “Register” 
     
  3. Kopieer de “Application (client) ID” en “Directory (tenant) ID”, deze hebben we later nodig in stap 2. 
     

 

 

  1. In het linker menu open “Certificates & secrets” 
    Open dan het tabje “Client secrets” 
    Voeg een secret toe via “+ New client secret” 
     
     

  1. Vul een beschrijving in en kies de verlooptijd. 
    Kopieer dan de secret value, deze hebben we ook later nodig in stap 2. 
      
     

  1. In het linker menu open “API Permissions” 
    Voeg een permission toe via “+ Add a permission” 
     
     

  1. Selecteer “API’s my organization uses” 
    En zoek naar “Office 365 Exchange Online” 
     

  1. Selecteer “Application permissions” 
    Zoek dan naar “SMTP.SendAsApp” en selecteer deze 
    Bevestig door op “Add permissions” te klikken 
     
     

  1. Tot slot klik op “Grant admin consent for…” en bevestig de aapassing 
     

  2. Stap 2: Accounts setup - mail toevoegen 

    In de tweede stap voegen we het mailaccount toe aan de accounts applicatie. 

     

    1. Open de admin applicatie 
      Navigeer naar tenant en dan “E-mailadressen” 
    2. Bovenaan klik op “+ toevoegen”
    3. Vul de naam en het e-mailadres van de afzender in. 
      Dit e-mailadres moet overeenkomen met het mailaccount van Microsoft. 
    4. Bij “App registration id” vul je de client id in die we eerder gekopieerd hebben 
      Bij “App registration secret” vul je de secret in 
      En bij “Tenant id” vul je de directory (tenant) id in. 
    5. De gegevens voor host, poort en encryptie kunnen leeg gelaten worden. 
      De standaardwaardes zouden correct moeten zijn.
    6. Sla het nieuwe account op door op opslaan te klikken rechts onder 

    1.  


    2.  

 

Stap 3: SMTP Aanzetten en rechten geven 

Deze stap is het meest ingewikkeld, hiervoor moet Powershell gebruikt worden. 

 

  1. Login bij Microsoft Azure portal 
    https://portal.azure.com/ 
  2. Open “Enterprise applications” (via zoekbalk) 
    Open dan de applicatie die we aangemaakt hebben in stap 1. 
  3. Kopieer het “Object ID” deze hebben we straks nodig 
     
  4. Open een Powershell terminal.
  5. Vul de volgende regels met de juiste waardes 
    Plak ze vervolgens in Powershell en verstuur ze 

 

$email = "example@atabix.nl" 
$applicationId = "57fe583a-b275-4c28-a05d-47e0332b3cac" 

$objectId = "3b44e87b-083f-4a6f-91c7-b298387b5b69" 

 

        Installeer de exchange online module en login bij exchange 

Install-Module -Name ExchangeOnlineManagement 

Connect-ExchangeOnline 

 

  1. Via deze commands kan SMTP aangezet worden 

Set-TransportConfig -SmtpClientAuthenticationDisabled $false 

Set-CASMailbox -Identity $email -SmtpClientAuthenticationDisabled $false 

 

  1. Tot slot moeten de juiste rechten gegeven worden met deze commandos 

New-ServicePrincipal -AppId $clientId -ServiceId $objectId 

$sp = Get-ServicePrincipal -Identity $clientId 

Add-RecipientPermission -Identity $email -Trustee $sp.Identity -AccessRights SendAs 

 

  1. Mocht het nog niet werken dan moet waarschijnlijk ook mailbox permissions gegeven worden. 

Add-MailboxPermission  -Identity $email -User $sp.Identity -AccessRights FullAccess 

 

 

Was dit artikel nuttig?

Dat is fantastisch!

Hartelijk dank voor uw beoordeling

Sorry dat we u niet konden helpen

Hartelijk dank voor uw beoordeling

Laat ons weten hoe we dit artikel kunnen verbeteren!

Selecteer tenminste een van de redenen
CAPTCHA-verificatie is vereist.

Feedback verzonden

We stellen uw moeite op prijs en zullen proberen het artikel te verbeteren