OAuth2-Authentifizierung für den E-Mail-Versand mit Microsoft Office 365
Für den E-Mail-Versand aus enaio® server und enaio® webclient mit Microsoft Office 365 sind spezifische Konfigurationen notwendig:
-
Konfiguration der OAuth2-Authentifizierung in Microsoft Office 365 und über die Windows Powershell.
-
Konfigurationen für administrative E-Mails von enaio® server in enaio® enterprise-manager.
-
Konfigurationen für enaio® webclient über die Konfigurationsdatei osweb-prod.yml von enaio® service-manager.
Microsoft Office 365 Konfigurationen für die Benutzer- und App-Registrierung
Die hier beschriebene Benutzerführung kann Änderungen durch Microsoft unterliegen. Konsultieren Sie bei Bedarf die Dokumentation von Microsoft.
-
Richten Sie die OAuth2-Unterstützung für das gewünschte Benutzerkonto ein.
Das Benutzerkonto geben Sie bei der enaio® client- und enaio® server-Konfiguration und bei der enaio® webclient-Konfiguration als 'SMTPUserName' an.-
Rufen Sie https://portal.microsoft.com/ auf.
-
Öffnen oder erstellen Sie das gewünschte administrative Benutzerkonto.
-
Aktivieren Sie die SMTP-Authentifizierung für dieses administrative Benutzerkonto, indem Sie zu E-Mail > E-Mail-Apps verwalten navigieren und das Häkchen bei Authentifiziertes SMTP setzen.
-
-
Erstellen Sie eine App-Registrierung:
-
Rufen Sie https://entra.microsoft.com/ auf.
-
Erstellen Sie eine neue App-Registrierung, indem Sie zu Identität > Anwendungen > App-Registrierungen navigieren und + Registrierung einer neuen Anwendung wählen.
-
Wählen Sie einen beschreibenden Namen, wählen Sie unter Umleitungs-URI Web aus und geben Sie http://localhost an.
-
-
Alle Benutzerkonten des Unternehmens, die E-Mails über enaio® webclient versenden sollen können, müssen speziell konfiguriert werden:
-
Gehen Sie zu Aktive Benutzer im Microsoft 365 Admin Center und machen Sie die folgenden Einstellungen für jedes gewünschte Benutzerkonto.
-
Klicken Sie im Reiter E-Mail auf Als Berechtigungen senden/Senden als Berechtigungen.
Sie finden hier zwei Benennungen bei Microsoft.
-
Setzen Sie das Häkchen beim administrativen SMTP-Benutzerkonto von enaio® webclient.
Wird das Häkchen nicht gesetzt, ist das Senden von E-Mails nicht möglich und es wird eine SendAsDenied-Fehlermeldung angezeigt
-
-
Richten Sie ein Geheimnis für die App-Registrierung ein:
-
Navigieren Sie im App-Registrierungsbereich zu Zertifikate & Geheimnisse.
-
Wählen Sie + Neuer geheimer Clientschlüssel.
-
Geben Sie eine Beschreibung ein, wählen Sie ein Ablaufdatum und wählen Sie Hinzufügen.
Notieren Sie den Wert des Clientschlüssels für die weitere Konfiguration.
-
-
Erteilen Sie API-Berechtigungen:
-
Gehen Sie zu API-Berechtigungen im App-Registrierungsbereich und wählen Sie Berechtigung hinzufügen.
-
Navigieren Sie zu Von meiner Organisation verwendete APIs > Office 365 Exchange Online > Anwendungsberechtigungen > SMTP und markieren Sie SMTP.SendAsApp.
-
Erteilen Sie die Administratorzustimmung für die Berechtigung.
-
Gehen Sie zu Übersicht und notieren Sie sich die Anwendungs-ID (Client) und die Verzeichnis-ID (Mandant) für die weitere Konfiguration.
-
-
Wählen Sie die Unternehmensanwendung:
-
Navigieren Sie zu Identität > Anwendungen > Unternehmensanwendungen und wählen Sie die neu erstellte Anwendung aus.
-
Notieren Sie sich die unter Übersicht angezeigte Objekt-ID für die weitere Konfiguration.
-
Fügen Sie unter Benutzer und Gruppen den gewünschten Benutzer hinzu.
-
Konfigurationen für Exchange (Online) über Windows Powershell
Installieren Sie, falls nicht bereits installiert, das Exchange Online Management in der Powershell.
-
Öffnen Sie die Windows Powershell.
-
Stellen Sie sicher, dass ExecutionPolicy auf RemoteSigned eingestellt ist:
Get-ExecutionPolicy
Set-ExecutionPolicy RemoteSigned -
Installieren Sie PowerShellGet:
Install-Module -Name PowerShellGet -Force
-
Installieren Sie das cmdlet Exchange Online Management:
Install-Module -Name ExchangeOnlineManagement #(for all users)
ODER
Install-Module -Name ExchangeOnlineManagement -Scope CurrentUser #(for the currently logged in user)
-
Erstellen Sie ein ServicePrincipal und richten Sie Berechtigungen in Exchange Online ein:
-
Öffnen Sie die Windows Powershell.
-
Stellen Sie eine Verbindung zu Exchange Online her:
Connect-ExchangeOnline -UserPrincipalName <USER@example.com>
-
Erstellen das Sie ServicePrincipal. Verwenden Sie die Objekt-ID aus der Unternehmensanwendung:
New-ServicePrincipal -AppId <ApplicationID> -ObjectId <ObjectID Enterprise Application> -DisplayName <Name>
-
Legen Sie Postfachberechtigungen fest:
Add-MailboxPermission -Identity <Email@example.com> -User <ObjectID Enterprise Application> -AccessRights FullAccess
-
-
Konfigurationen für enaio® server in enaio® enterprise-manager
In enaio® enterprise-manager sind für den Versand administrativer E-Mail von enaio® server mit Microsoft Office 365 folgende Einstellungen notwendig:
Parameter |
Wert (Registry-Eintrag) |
Beschreibung |
---|---|---|
E-Mail-Absender |
- (MailSender) |
Absenderadresse für den Server zum Verschicken von E-Mails an das administrative Konto. Die Adresse muss dem SMTP-Benutzernamen und dem eingerichtetem Benutzer entsprechen. |
Administrative E-Mails |
E-Mails erlauben (NoMails=0) |
Schaltet das Absenden von administrativen E-Mails für die Übermittlung von Systemereignissen an oder ab. Beim Starten und Beenden werden jeweils die Protokolldateien 'startup.txt' und 'shutdown.txt' mitgesendet. |
E-Mail-Server |
smtp.office365.com (MailServer) |
IP-Adresse oder Host Name des E-Mail-Servers für administrative E-Mails. |
SMTP-Verschlüsselung |
2 (SMTPSecurity=2) |
Keine (0), SSL (1), TLS (2). Der entsprechende Port muss bei Verschlüsselung ebenfalls eingestellt werden. |
SMTP-Serverport |
587 (SMTPPort) |
Port für SMTP |
SMTP-Authentifizierung |
OAuth2 Microsoft Office (SMTPAuthenticating=3) |
Authentifizierungsmethode für SMTP. |
- (SMTPUserName) |
Benutzername für die SMTP-Anmeldung. Die Adresse muss dem E-Mail-Absender und dem eingerichtetem Benutzer entsprechen. |
|
MS Office Client-ID |
- (OfficeClientID) |
Office 365 Anwendungs-ID (Client) für die E-Mail-Authentifizierung 'OAuth2 Microsoft Office' aus der Microsoft Office 365 Konfiguration. |
MS Office Client‑Secret |
- (OfficeClientSecret) |
Office 365 geheimer Clientschlüssel für die E-Mail-Authentifizierung 'OAuth2 Microsoft Office' aus der Microsoft Office 365 Konfiguration. Das Client-Secret wird verschlüsselt gespeichert und maskiert angezeigt. |
MS Office Tenant‑ID |
- (OfficeTenantID) |
Office 365 Verzeichnis-ID (Mandant) für die E-Mail-Authentifizierung 'OAuth2 Microsoft Office' aus der Microsoft Office 365 Konfiguration. |
- |
https://login.microsoftonline.com/#TenantID#/oauth2/v2.0/token (OfficeTokenEndpoint) |
Adresse für die Anmeldung an Microsoft Office 365. Der Platzhalter #TenantID# durch den Wert aus OfficeTenantID ersetzt. |
- |
https://outlook.office365.com/.default (OfficeAccessScopes) |
Standard-Abfrageparameter für SMTP. |
- |
30 (OfficeTokenGraceTimeInSeconds) |
Pufferzeit in Sekunden, die von dem Ablaufen des Tokens abgezogen wird, um sicherzustellen, dass das Token gültig bleibt, bis die E-Mail tatsächlich gesendet wird. |
Die Registry-Einträge OfficeTokenEndpoint, OfficeAccessScopes und OfficeTokenGraceTimeInSeconds sind Standard-Einstellungen, die enaio® enterprise-manager in den Servereinstellungen nicht anzeigt. Diese Registry-Einträgesollten in der Regel nur nach Absprache geändert werden. |
Konfigurationen für enaio® webclient über osweb-prod.yml
In der Konfigurationsdatei osweb-prod.yml von enaio® service-manager sind für den E-Mail-Versand aus enaio® webclient mit Microsoft Office 365 folgende Einstellungen notwendig. Die Konfiguration kann über enaio® services-admin vorgenommen werden.
Parameter |
Wert |
Beschreibung |
---|---|---|
featureSwitches.sendEmail.smtpServer | - |
SMTP-Server für das Senden von E-Mails, Host oder IP. |
featureSwitches.sendEmail.smtpPort | - | Port des SMTP-Servers. |
featureSwitches.sendEmail.smtpEncryption | TLS |
Verschlüsselungsverfahren:
|
featureSwitches.sendEmail.smtpAuthentication | MS_OAUTH |
Authentifizierung am SMTP-Server: |
featureSwitches.sendEmail.smtpUsername | - |
Benutzername für die globale Authentifizierung am SMTP-Server. Schema:
|
featureSwitches.sendEmail.oAuthClientId | - | Die Anwendungs-ID (Client) für die OAuth-Authentifizierung zum Senden von E-Mails aus der Microsoft Office 365 Konfiguration. |
featureSwitches.sendEmail.oAuthClientSecret | - |
Der geheime Clientschlüssel für die OAuth-Authentifizierung zum Senden von E-Mails aus der Microsoft Office 365 Konfiguration. |
featureSwitches.sendEmail.oAuthTenantId | - | Die Verzeichnis-ID (Mandant) für die OAuth-Authentifizierung zum Senden von E-Mails aus der Microsoft Office 365 Konfiguration. |