Skip to main content

Konfiguration Authentication Code Flow (delegated) MS Graph API

Konfiguration in Squeeze

Diese Konfigurationsoberfläche wird ab der Version 2.3.0 bereitgestellt.

image-1667829176140.png


Wie man nun erkennt, kann man in der Konfigurations-Oberfläche unter Protokoll zwei Arten der Anbindung zu Microsoft(MS) Graph API wählen:

image-1667829730505.png

Für den delegierten Autorisierungsprozess wählen wir Microsoft Graph API Delegated. Im nächsten Schritt füllen wir die Felder Client ID, Client Secret die Tenant ID und die restlichen Felder. 

Konfiguration in AAD (Azure Active Directory)

Weitere notwendige Schritte für ein reibungslosen Ablauf sind die Einrichtung einer Azure-Active-Directory Application
mit einem Client Secret. Die Globale Registrierung eines Mail-Dienstes der "Dexpro"  im Azure-Active-Directory  des Kunden, wird vorerst nicht angeboten.

Zudem muss darauf geachtet werden dass die Application folgende Scopes besitzt. 

image-1667831638945.png

Anders als in den Permission für den Client Credential Flow ist jegliche Permission hier beschränkt auf den autorisierenden User.

Merke: Wenn auf ein Shared-Mailbox Postfach zugegriffen werden soll, muss das Shared-Mailbox Postfach unter Postfach eingetragen werden und die Application Permission Mail.Read.Write.Shared muss konfiguriert werden.

Denken Sie daran, dass die Shared-Mailbox auch Ihrer Email-Aktivierten Sicherheitsgruppe hinzugefügt wird, wenn Sie eine eingerichtet haben.


Ebenfalls ein maßgebender Unterschied zum Client Credential Flow ist hier die Verwendung einer Redirect URI
Diese Redirect URI wird in der AzureActive-Directory unter der Application im Reiter Authentication angelegt:

image-1667834984266.png

Schema Redirect URI: https://Ihr.vollwertiger.DomainName/api/v2/importers/email/authenticate/end

Merke: Ein Squeeze Mandant benötigt immer eine Azure-Active-Directory Application mit jeweils einer Redirect URI.
Das bedeutet Sie müssen für jeden Mandanten eine Application anlegen.

Autorisierungsprozess Authentication Code Flow

hat man nun seine Application im AAD konfiguriert und alle notwendigen Daten in die Konfigurationsoberfläche getippt kann man  nun seine Konfiguration abspeichern. 

image-1667832067117.png

Nun öffnet sich ein weiteres Dialog Feld :

image-1667832557714.png
Das System hat Ihre Konfiguration gespeichert, den Prozess der Authentifizierung müssen Sie jedoch separat über einen Button in der Email Konfiguration starten. Hierfür wählen Sie bitte den folgenden Button:

image-1667832766364.png

Nach einem Klick auf diesen Button werden Sie nun zur Oberfläche von Microsoft weitergeleitet. Dort beginnt der Authentifizierungsprozess befolgen Sie die Anweisungen von Microsoft:

Geben Sie ihre Email-Adresse an.

image-1667834432799.png

Geben Sie Ihr Passwort ein:

image-1667834456501.png

Je nach Unternehmen werden Sie ebenfalls aufgefordert eine 2-Faktor-Authentifizierung durchzuführen.:

image-1667834490358.png

Sobald Sie Authentifiziert sind, werden die Berechtigungen abgefragt und Sie werden aufgefordert diese Berechtigungen zu bestätigen. Nach Ihrer Bestätigung leitet Microsoft umgehend zurück zur Squeeze-Oberfläche. 

Die Oberfläche wird Ihnen nun anzeigen ob Squeeze nun Autorisiert ist oder ob ein Fehler aufgetreten ist:

image-1667834259123.png
Nun können Sie die Mail Verbindung testen Indem Sie den Mail Verbindungstest Button in der Oberfläche bedienen. 

To-Do´s nach erfolgreicher Konfiguration

Um Ihnen als Nutzer ein optimales Erlebnis bieten zu können müssen wir in Squeeze weitere Punkte beachten. 
Da die Authentifizierung und die Autorisierung der Email Importe in diesem Authentifizierungsverfahren ein immer wiederkehrender Prozess ist und Sie als Anwender nicht immer wieder sich Authentifizieren müssen gibt es nun einen neues Skript das Ihnen diese wiederkehrende Arbeit abnehmen wird. 

Damit Squeeze erfolgreicher den Zugriff auf das Postfach aktuell und reibungslos bereitstellen kann müssen wir ein Job einrichten der die generierten Zugriffstoken aktualisiert.

Hierfür finden wir unter dem Administrationspunkt Skripte das neue Skript  mit den Namen refresh-tokens:

image-1667905655850.png

Dieses Skript kann man zu jedem Zeitpunkt manuell ausführen. 
Um aber letztendlich diese Aufgabe zu einem Job umzuwandeln folgen dieSie bitte den allgemeinen Hilfestellungen in dem Artikel über JobausführungenJob Ausführungen in Squeeze und dem Artikel über Job Steuerungen, beachten Sie dabei die Hinweise in den Artikeln.

Die Möglichkeit einen Zugriffstoken zu aktualisieren steht nur 24 Stunden zur Verfügung.
Daher sollten Sie einen Job einrichten der aus Sicherheitsgründen max. eine Stunde vor Ablauf läuft, beispielsweise alle 23 Stunden.

Cron-Ausdruck(Job) : 0 0 0/23 ? * * *

Fragen und Antworten

Was passiert wenn der Job ausfällt ? 
Ist der Job durch unvorhersehbare Gründe nicht gelaufen so müssen Sie sich neu Authentifizieren mit dem Authentifizierung-Button in der Email-Konfiguration
Kann ich einfach meine Postfach in der Konfiguration ändern und muss ich danach was tun ? 
Sobald Sie die Konfiguration ändern oder abspeichern, weist die Anwendung Sie darauf hin, ein neuen Authentifizierungsprozess einzuleiten. 
Lehnen Sie dieses Aufforderung ab. Haben Sie immernoch die Möglichkeit den Authentifizierungsbutton zu betätigen.
Kann ich meine Azure-Active-Directory Application für mehrere Squeeze Mandanten nutzen ?

Nein, die Verwendung einer Application (AAD) für mehrere Mandanten ist nicht Möglich, solange die Mandanten unter anderen Domänen erreichbar sind. 
Beispiel:
1 Mandant:

test.mandant.squeeze.one

 

2 Mandant:

test2.mandant.squeeze.one

 

In diesem Beispiel kann man keine Application verwenden, da wir pro Application nur einen Mandanten ansprechen können. Ein Authentifizierung bei Microsoft würde ggf. immer nur auf einen Mandanten laufen.

 

Du hast die Möglichkeit mehrere Postfächer mit der selben Application(AAD) zu nutzen, dort gibt es keine Begrenzungen.