Vai al contenuto

Send Email tramite autorizzazione Microsoft Graph

Abstract

Impara come registrare in Microsoft Azure per ottenere le chiavi permesso e autenticare un servizio Send Email tramite Microsoft Graph.

Creare un'applicazione Azure Active Directory con permessi Graph

Se vuoi permettere a eLegere to mandare email usando un'autorizzazione Microsoft Graph, devi configurare un'applicazione Azure Active Directory cone i permessi appropriati.

Segui questa guida per imparare tutti i passi necessari.

Note

Puoi eseguire questi passaggi usando Azure PowerShell, la Azure CLI o Azure Portal.

Questa guida assume l'uso di Azure Portal.

  1. Creare una nuova App Registration.

  2. Andare su Azure Active Directory (Azure Portal > Active Directory > App registrations > New Registration).

  3. Creare un nuova App Registration con i seguenti parametri:

  4. Name: Qualunque si preferisca.

  5. Type: Accounts in this organizational directory only (Single tenant)
  6. Redirect URI: Not Required.

Avrai creato l'applicazione che fornisce il servizio email per le Send Email in eLegere.

Configurare l'applicazione

L'applicazione Send Email per eLegere deve affidarsi a un metodo Client ID \ Certificate tradizionale. Leggere le istruzioni seguenti.

Devi creare un nuovo certificato (e.g. certificato self-signed usando OpenSSL o altro tipo) e conservare il suo valore assieme al Tenant ID e al Client ID dell'applicazione.

Nella pagina dell'applicazione (Application's page):

  1. Configurare Certificates & Secrets > Client Upload Certificate.
  2. Copiare l'Application ID (Client ID) e il Tenant ID per la tua applicazione. (Puoi trovare queste impostazioni sulla pagina Overview della tua applicazione.)

  1. Copiare l'Application ID e il Directory/Tenant ID per la tua applicazione Azure Active Directory Application.

Dopo i passaggi 1-3, dovresti conservare questi valori per un uso successivo:

  • Directory ID (i.e. Tenant Id nei Domain Settings).
  • Application ID (i.e. Client Id nei Domain Settings).
  • Il valore del certificato che hai creato per quest'applicazione.

Configurare i permessi dell'applicazione

Configurare in Azure la sendEmail come descritto sotto:

Tipo Permesso Permessi
Application Mail.Send

Dalla pagina applicazione in Azure Portal:

  • API permissions > Add a permission
  • Microsoft Graph > Application Permissions > Mail.Send > cliccare Add Permission
  • A tua scelta, rimuovi i permessi di default per l'applicazione.

Assegnare i permessi appropriati per l'applicazione Azure Active Directory, autorizzandola a inviare le email usando le API Microsoft Graph.

La tua configurazione permessi dovrebbe assomigliare a questa:

Clicca su "Grant admin consent on behalf of ". Vedi Administrator Consent per Azure Identity Platform.

Warning

Dopo questo passaggio, devi restringere i permessi dell'applicazione a caselle di posta specifiche per ragioni di sicurezza.

Restringere accesso caselle di posta

Dopo aver creato l'applicazione di servizio per la Send Email, devi restringere l'applicazione Azure a caselle di posta specifiche.

Puoi configurare l'accesso alle caselle di posta tramite il pannello Application Access Policy.

Segui i passi seguenti:

  1. Recupera l'Application ID dai passaggi precedenti.

  2. In Exchange Online Portal > Mail-enabled security, crea un gruppo per l'applicazione.(E.g.security.group@vesenda.com)

  3. Aggiungi le caselle di posta desiderate al gruppo creato al passo 2. Queste caselle di posta saranno le uniche autorizzate a usare l'applicazione per la Send Email.

  4. Create l'Application Key Policy usando il comando connect-exchangeonline commandlet e digitando il comando seguente nella CLI:

    1
    New-ApplicationAccessPolicy -AppId [Inserire qui l'Application ID] -PolicyScopeGroupId [Inserire qui il riferimento al security group, e.g. security.group@vesenda.com] -AccessRight RestrictAccess -Description "Restrict this app to members of distribution group mailaccessgroup"
    
  5. Testare un utente casuale per verificare che i permessi funzionano come desiderato. Usare il seguente comando nella CLI di Exchange Online:

    Test-ApplicationAccessPolicy -Identity [insert User's Email here] -AppId [Inserire qui l'Application ID]

    Se l'utente appartiene al gruppo, riceverai AccessCheckResult: Granted come risultato dalla CLI.

    Se l'utente non appartiene al gruppo, riceverai AccessCheckResult: Denied come dalla CLI.