Google Workspace-Integration: Unterschied zwischen den Versionen

[gesichtete Version][gesichtete Version]
 
(45 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{DISPLAYTITLE:Abgleich der Benutzerkonten mit G Suite}}
+
{{DISPLAYTITLE:Abgleich der Benutzerkonten mit Google Workspace}}
{{Verzeichnisdienste_Einleitung|G Suite-Konto}}
+
{{Verzeichnisdienste_Einleitung|Google Workspace-Konto|Google Workspace}}
  
== Vorbereiten des G Suite-Kontos ==
+
<p class=msnote>Bitte beachten Sie die [https://go.mailstore.com/?lang=en&target=gsuite-lsa-restriction Ankündigung von Google] vom 16. Dezember 2019, den Zugriff auf Google Workspace-Konten von weniger sicheren Apps in Zukunft einzuschränken. Dies betrifft jede Version vor MailStore Server 13, welche daher nicht länger in der Lage sein werden, Benutzer beim Versuch, sich an MailStore Server anzumelden, gegen Google Workspace zu authentifizieren.  
Um Benutzerinformationen aus G Suite zu synchronisieren, benötigt MailStore ein Dienstkonto, welches das Recht besitzt, auf Ihr G Suite-Konto zuzugreifen. Das gleiche Dienstkonto wird später auch für die Archivierung von E-Mails verwendet.
+
<br/>
 +
<br/>
 +
In MailStore Server 13 wurde die Unterstützung für moderne Authentifizierungsmethoden via OAuth 2.0 & OpenID Connect entsprechend Googles Empfehlung eingeführt. Obwohl MailStore Server 13 weiterhin  Unterstützung einer IMAP-basierten Authentifizierung enthält, behandelt dieses Dokument ausschließlich die Einrichtung unter Verwendung moderner Authentifizierungsmethoden wie in Zukunft von Google verlangt.</p>
  
=== Projekt erstellen ===
+
== Voraussetzungen, Empfehlungen und Einschränkungen ==
Um MailStore Zugriff auf G Suite zu geben, muss zunächst ein Projekt angelegt werden. Unter "Projekt" versteht Google alle Einstellungen, Zugangsdaten und Metadaten von Anwendungen, welche die Google Developer APIs oder Google Cloud Ressourcen verwenden.
+
* Um Googles Anforderungen an ''Autorisierte Weiterleitungs-URIs'' zu erfüllen, muss MailStore Server über einen URI erreichbar sein, welcher auf einer öffentlichen Top-Level-Domain endet. Dies bedeutet nicht notwendigerweise, dass er tatsächlich aus dem Internet erreichbar sein muss. Google verwendet zur Validierung die Liste von https://publicsuffix.org.
 +
* Für eine bestmögliche Benutzererfahrung sollte dem von MailStore Server benutzten Zertifikat von allen Clients und Webbrowsern vertraut werden. Es wird empfohlen, ein von einer vertrauenswürdigen Zertifizierungsstelle signiertes Zertifikat oder [[Verwendung_von_Lets_Encrypt_Zertifikaten|Let's Encrypt Zertifikate]] zu verwenden.
 +
* Wenn sich Benutzer von außerhalb des Firmennetzwerks ohne VPN über den [[Zugriff_über_die_MailStore_Client-Software|MailStore Client]], das [[Zugriff_über_die_Microsoft_Outlook-Integration|MailStore Outlook-Addin]] oder den [[Zugriff_über_MailStore_Web_Access|MailStore Web Access]] an MailStore Server anmelden sollen, müssen die in diesem Artikel beschriebenen URIs auch im Internet per DNS aufgelöst werden können und gegebenenfalls Port-Weiterleitungsregeln zum MailStore Server-Computer auf der Firewall oder dem Router eingerichtet werden.
 +
* Wird Google zur Authentifizierung von Benutzern verwendet, ist der [[Zugriff_über_MailStore_integrierten_IMAP-Server|Zugriff auf das Archiv mittels IMAP]] aus technischen Gründen nicht möglich.
  
* Öffnen Sie die [https://console.developers.google.com/ Google Developers Console].
+
== Projekt bei Google registrieren ==
* Falls erforderlich, melden Sie sich mit einem administrativen G Suite Benutzer an.
+
Unabhängig davon, ob eigene oder Drittanwendungen wie MailStore Server mit einen Google Workspace-Konto über Google APIs interagieren sollen, müssen diese als Projekt bei Google registriert werden. Dies ist notwendig, um sicherzustellen, dass Zugriff durch externe Anwendungen auf ein notwendiges Minimum beschränkt wird und jede Anwendung eigene Zugangsdaten zur Anmeldung an Google verwendet.
* Wenn kein Projekt existiert, klicken Sie auf ''Erstellen'' auf dem Dashboard. Andernfalls öffnen Sie das ''Projekt'' Drop-Down-Menü in der Kopfzeile und klicken Sie auf ''Neues Projekt''.
 
* Geben Sie dem Projekt einen Namen, z.B. ''MailStore API Access''. Standardmäßig wird eine zufällige Projekt-ID vergeben. Bearbeiten Sie diese bei Bedarf. Klicken Sie auf ''Erstellen''.
 
* Nachdem das Projekt erstellt wurde, wird ''APIs & Dienste'' angezeigt.
 
* Stellen Sie sicher, dass das gerade erzeugte Projekt aktiv ist. Das aktive Projekt kann über das Drop-Down-Menü geändert werden.
 
* Wechseln Sie zur ''API Bibliothek''.
 
* Aktivieren Sie in der Bibliothek das ''Admin SDK'' und die ''Gmail API''. Durch einen Klick auf ''Google APIs'' in der Kopfzeile können Sie zur Übersicht zurück navigieren.
 
* Klicken Sie unter ''Anmeldedaten'' auf ''Anmeldedaten erstellen'' und wählen Sie den  Eintrag ''Dienstkontoschlüssel''.
 
* Wählen Sie ''Neues Dienstkonto'' in der ''Dienstkonto''-Dropdown-Liste.
 
* Geben Sie einen Namen für das Dienstkonto ein. Das Dienstkonto benötigt keine Rechte auf Projektebene, wählen Sie daher keine Rolle aus.
 
* Belassen Sie den Schlüsseltyp auf ''JSON'' und klicken Sie auf ''Erstellen''.
 
* Bestätigen Sie den Hinweisdialog mit ''Ohne Rolle erstellen''.
 
* Die JSON Datei wird heruntergeladen. Speichern Sie die JSON-Datei (z.B. <tt>MailStore API Access-e035d2ad4f35.json</tt>) in einem Verzeichnis auf dem MailStore Server.
 
* Schließen Sie den ''Dienstkonto erstellt'' Dialog.
 
* Klicken Sie auf ''Dienstkonten verwalten''.
 
* Klicken Sie auf die 3-Punkte-Dropdown-Liste unter ''Aktionen'' des Dienstkontos und wählen Sie ''Bearbeiten''.
 
* Lassen Sie sich die Domainweite Delegation einblenden und aktivieren Sie die Option ''Domainweite G Suite-Delegation aktivieren''.
 
* Geben Sie ''MailStore'' als ''Produktname für den Zustimmmungsbildschirm'' ein.
 
* Klicken Sie auf ''Speichern''.
 
* Klicken Sie auf den Dienstkontonamen, um sich dessen Details anzeigen zu lassen. Notieren sie sich die ''Eindeutige ID'' (''Client-ID'') und die ''E-Mail'' zur späteren Verwendung.
 
  
=== Zugriff auf APIs erteilen ===
+
=== Erstellen eines neuen Projektes ===
Nachdem das Projekt erfolgreich angelegt wurde, muss diesem Zugriff auf die APIs erteilt werden, welche MailStore zur Verzeichnisdienstsynchronisierung und Archivierung verwendet.
+
Um ein neues Projekt für MailStore Server bei Google zu registrieren, gehen Sie wie folgt vor:
  
* Öffnen Sie die G Suite [https://admin.google.com/ Admin-Konsole]
+
* Öffnen Sie die [https://console.cloud.google.com/ Google Cloud Platform Console].
* Klicken Sie auf das Widget ''Sicherheit''. Ist dieses nicht sichtbar, klicken Sie auf ''Mehr Widgets'' in der grauen Leiste am Fuß der Seite und wählen Sie anschließend ''Sicherheit'' aus. Sollte ''Sicherheit'' immer noch nicht nicht sichtbar sein, stellen Sie sicher, dass Sie als Administrator der G Suite-Domäne angemeldet sind.
+
* Falls erforderlich, melden Sie sich mit einem Google Workspace-Benutzer an. Es wird dringend empfohlen, einen Benutzer mit administrativen Rechten zu verwenden.
* Klicken Sie auf ''Grundlegende Einstellungen''.
+
* Wenn kein Projekt existiert, klicken Sie auf ''Erstellen'' auf dem Dashboard. Andernfalls öffnen Sie die Liste der Projekte durch Klicken auf das ''Projekt'' Drop-Down-Menü in der Kopfzeile und klicken Sie auf ''Neues Projekt''.
* Stellen Sie sicher, dass die Einstellung unter ''Weniger sichere Apps'' '''nicht''' auf ''Zugriff auf weniger sichere Apps für alle Nutzer deaktivieren (empfohlen)'' steht. Wählen Sie anderfalls eine der beiden anderen Optionen und speichern Sie die Änderungen.
+
* Geben Sie einen aussagekräftigen Namen in das Feld ''Projektname'' ein, wie z.B. <tt>MailStore Server</tt>.
* Navigieren Sie zurück zu ''Sicherheit''.
+
* Überprüfen Sie, dass ''Organisation'' der gewünschten Organisation entspricht und passen sie den ''Speicherort'' gegebenenfalls an.
* Klicken Sie auf ''API-Referenz''.
+
* Klicken Sie auf ''Erstellen''.
* Aktivieren Sie ggf. den ''API-Zugriff'' und speichern Sie die Änderungen.
+
 
* Klicken Sie auf ''Erweiterte Einstellungen''. Sollte dieser Abschnitt nicht sichtbar sein, klicken Sie zunächst auf ''Mehr anzeigen''.
+
Nachdem das Projekt erstellt wurde, stellen Sie sicher, dass dieses in der Projekt Drop-Down-Liste ausgewählt ist, bevor Sie fortfahren.
* Klicken Sie im Abschnitt ''Authentifizierung'' auf ''API-Client-Zugriff verwalten''.
+
 
* Geben Sie im Feld ''Client-Name'' die ''Client-ID'' des Dienstkontos ein (z.B. ''108878593494909748351'').
+
==== API-Bibliotheken hinzufügen ====
* Tragen Sie in das ''Ein oder mehrere API-Bereiche'' Feld folgende Bereiche ein:
+
* Öffnen Sie das ''Navigationsmenü'' (☰) und wählen Sie ''APIs & Dienste'' > ''Bibliothek'' aus.
 +
* Suchen und aktivieren Sie in der ''API-Bibliothek'' folgende APIs und Dienste:
 +
*: <tt>Admin SDK API</tt>
 +
*: <tt>Gmail API</tt>
 +
 
 +
==== Anpassen des OAuth-Zustimmungsbildschirm ====
 +
* Öffnen Sie das ''Navigationsmenü'' () und wählen Sie ''APIs & Dienste > OAuth-Zustimmungsbildschirm'' aus.
 +
* Wählen Sie ''Intern'' als ''Nutzertyp'' aus.
 +
* Klicken Sie auf ''Erstellen''.
 +
* Geben Sie einen aussagekräftigen Namen in das Feld ''Anwendungsname'' ein, wie z.B. <tt>MailStore Server</tt>
 +
* Füllen Sie die weiteren Felder gemäß den Richtlinien Ihrer Organisation aus.
 +
* Klicken Sie auf ''Speichern und Fortfahren''.
 +
* Klicken Sie im nächsten Schritt direkt erneut auf ''Speichern und Fortfahren'', da MailStore Server keine Autorisierung durch Benutzer auf Bereiche benötigt.
 +
 
 +
=== Erstellen eines Dienstkontos ===
 +
Ein Dienstkonto für MailStore Server wird benötigt, damit sich dieser an Google anmelden kann und die Authorisierung zur Nutzung bestimmter Google APIs erhält, um Benutzer zu synchronisieren und Zugriff auf Postfächer zu erhalten. Die folgenden Schritte beschrieben die Einrichtung eines solchen Dienstkontos.
 +
 
 +
* Öffnen Sie das ''Navigationsmenü'' (☰) und wählen Sie ''APIs & Dienste'' > ''Anmeldedaten'' aus.
 +
* Klicken Sie auf ''+ Anmeldedaten erstellen'' und wählen Sie ''Dienstkonto'' aus dem Drop-Down-Menü aus.
 +
* Auf der Seite ''Dienstkonto erstellen'' tragen Sie den Namen für das Dienstkonto ein, z.B. <tt>MailStore Server Dienst</tt>.
 +
* Die Dienstkonto-ID können Sie in der automatisch erstellten Voreinstellung belassen oder nach Wunsch anpassen.
 +
* Geben Sie eine Beschreibung ein, wie z.B. <tt>Dienstkonto für MailStore Server zum Synchronisieren von Benutzern und Archivieren von Postfächern</tt>.
 +
* Klicken Sie auf ''Erstellen und fortfahren''.
 +
* Das Dienstkonto benötigt keine Berechtigungen auf Projektebene, weshalb keine Rollen ausgewählt werden müssen. Auch benötigen Nutzer keinen Zugriff auf das Dienstkonto, weshalb im Schritt ''Nutzern Zugriff auf dieses Dienstkonto erteilen'' keine Einstellungen vorgenommen werden müssen.
 +
* Klicken Sie auf ''Fertig''.
 +
* Klicken Sie in der nun angezeigten Liste der Dienstkonten auf das neu erstellte Dienstkonto, um dessen Eigenschaften zu öffnen.
 +
* Klicken Sie unter ''Schlüssel'' auf ''Schlüssel hinzufügen'' und dann auf ''Neuen Schlüssel erstellen''.
 +
* Wählen sie als Schlüsseltyp ''JSON'' aus und klicken Sie auf ''Erstellen''.
 +
* Die JSON Datei wird automatisch heruntergeladen. Speichern Sie die JSON-Datei an einem sicheren Ort, da er den Zugriff of Cloud-Resourcen Ihrer Organisation ermöglicht.
 +
* Klicken Sie auf ''Schliessen''.
 +
* Klicken Sie unter ''Details'' auf ''Erweiterte Einstellungen einblenden''.
 +
* Kopieren Sie unter ''Domainweite Delegation'' die ''Client-ID'' in die Zwischenablage.
 +
* Rufen Sie mittels der Schaltfläche die [https://admin.google.com Google Workspace-Admin-Konsole] auf und melden Sie sich ggf. erneut mit Ihrem Google Workspace Domänen Administrator an.
 +
* Öffnen Sie das ''Navigationsmenü'' (☰) und wählen Sie ''Sicherheit'' > ''Zugriffs- und Datenkontrolle'' > ''API-Steuerung'' aus.
 +
* Klicken Sie unter ''Domainweite Delegierung'' auf ''Domainweite Delegierung Verwalten''.
 +
* Klicken Sie auf der Seite ''Domainweite Delegierung'' auf ''Neu hinzufügen''.
 +
* Kopieren Sie die ''Client ID'' des OAuth 2.0 Clients aus der Zwischenablage ein.  
 +
* Tragen Sie unter ''OAuth-Bereiche'' folgende Bereiche ein:
 
*: <tt><nowiki>https://mail.google.com/, https://www.googleapis.com/auth/admin.directory.group.readonly, https://www.googleapis.com/auth/admin.directory.user.readonly</nowiki></tt>
 
*: <tt><nowiki>https://mail.google.com/, https://www.googleapis.com/auth/admin.directory.group.readonly, https://www.googleapis.com/auth/admin.directory.user.readonly</nowiki></tt>
 
* Klicken Sie auf ''Autorisieren''.
 
* Klicken Sie auf ''Autorisieren''.
  
== Aufruf der Verzeichnisdienste-Integration ==
+
=== Erstellen eines OAuth 2.0 Clients zur Authentifizierung von Benutzern ===
{{Verzeichnisdienste_Aufrufen|G Suite|gapps_sync_01.png}}
+
Um es Benutzers zu ermöglichen, sich an MailStore Server durch Authentifizierung bei Google mit Hilfe des OpenID Connect-Mechanismus anzumelden, muss ein weiterer OAuth 2.0 Client erstellt werden, wie im Folgenden beschrieben:
  
== Verbindung zu G Suite ==
+
* Öffnen Sie die [https://console.cloud.google.com/ Google Cloud Platform Console].
Für die Synchronisierung benötigt MailStore Server Informationen darüber, wie das G Suite-Konto angesprochen werden kann.
+
* Öffnen Sie das ''Navigationsmenü'' (☰) und wählen Sie ''APIs & Dienste'' > ''Anmeldedaten'' aus.
 +
* Klicken Sie auf ''+ Anmeldedaten erstellen'' und wählen Sie ''OAuth-Client-ID'' aus dem Drop-Down-Menü aus.
 +
* Wählen Sie ''Webanwendung'' als Anwendungstyp aus.
 +
* Klicken Sie unter ''Autorisierte Weiterleitungs-URIs'' auf ''+ URI hinzufügen''.
 +
* Tragen Sie in das Feld ''Umleitungs-URI'' einen URI in Format (ohne die Klammern)
 +
*: <code>https://<fqdn>[:<port>]/oidc/signin</code>
 +
*; aus folgenden Bestandteilen ein:
 +
*: '''https://'''<br/>Die Angabe des Protokolls muss verpflichtend  ''https://'' lauten. Damit bei der Benutzeranmeldung später keine Zertifikatswarnungen erscheinen, muss dem [[MailStore_Server_Dienst-Konfiguration#Zertifikat|von MailStore Server verwendeten Zertifikat]] von den Webbrowsern auf den Client-Geräten vertraut werden.
 +
*: '''FQDN'''<br/>Der vollständige DNS-Name, engl. Fully Qualified Domain Name (FQDN), Ihres MailStore Servers, bestehend aus dem Rechnernamen und der DNS-Domäne, z.B. <tt>mailstore.example.com</tt>. Dieser muss von allen Clients, von denen aus sich Benutzer an MailStore Server anmelden sollen, auflösbar sein.
 +
*: '''Port'''<br/>Der TCP-Port des MailStore Web Access (standardmäßig <tt>8462</tt>). Dieser muss mit dem in der [[MailStore Server Dienst-Konfiguration#Dienste|MailStore Server Dienst-Konfiguration]] in der Sektion ''Netzwerkeinstellungen > Dienste > MailStore Web Access / Outlook Add-in (HTTPS)'' konfigurierten Port übereinstimmen. Der TCP-Port muss nur angegeben werden, wenn dieser vom Standardport des HTTPS-Protokolls (443) abweicht.
 +
*: '''/oidc/signin'''<br/>An diesem Endpunkt erwartet MailStore Server die Authentifizierungsantworten von Google Workspace. Dieser Pfad muss exakt so am Ende des Umleitungs-URIs stehen.
 +
* Klicken Sie auf ''Erstellen''.
 +
* Kopieren Sie die Client ID und den Clientschlüssel aus den Feldern ''Ihre Client-ID'' und ''Ihr Clientschlüssel'' an einen sicheren Ort (z.B. Passwort-Tresor) und klicken Sie auf ''OK''.
 +
<div class="resp-table">
 +
::{| class="wikitable"
 +
|+ Beispiele für gültige Umleitungs-URIs
 +
|-
 +
! style="width:70px;" | Produkt
 +
! style="width:70px;" | FQDN
 +
! style="width:40px;" | Port
 +
! Resultierender Umleitungs-URI
 +
|-
 +
| align="center"| MailStore Server
 +
| align="center"| mailstore.example.com
 +
| align="center"| 8462
 +
| <code><nowiki>https://mailstore.example.com:8462/oidc/signin</nowiki></code><br/><br/>Umleitungs-URI mit vollständigem DNS-Namen und MailStore Web Access Standardport.
 +
|-
 +
| align="center"| MailStore Server
 +
| align="center"| mailstore.example.com
 +
| align="center"| 443
 +
| <code><nowiki>https://mailstore.example.com/oidc/signin</nowiki></code><br/><br/>Wird der HTTPS-Standardport 443 für den MailStore Web Access oder als Quellport einer Firewall-Port-Weiterleitungsregel verwendet, kann die Portangabe im Umleitungs-URI entfallen.
 +
|-
 +
| align="center"| MailStore SPE
 +
| align="center"| archive.example.com
 +
| align="center"| 443
 +
| <code><nowiki>https://archive.example.com/<instanceid>/oidc/signin</nowiki></code><br/><br/>Die ''instanceid'' der Instanz ist Teil der Weiterleitungs-URI.  
 +
|-
 +
|}
 +
</div>
  
* '''Schlüssel-ID'''<br/>Wählen Sie zum Import des privaten Schlüssels die von Google für das Dienstkonto erzeugte JSON-Datei (z.B. <tt>MailStore API Access-e035d2ad4f35.json</tt>) aus.
+
== Konfiguration von MailStore Server ==
 +
Nachdem das Projekt auf Google Seite erfolgreich eingerichtet wurde, kann nun MailStore Server konfiguriert werden, um Benutzer zu Synchronisieren und gegen Google Workspace zu authentifizieren.
 +
 
 +
{{Verzeichnisdienste_Aufrufen|Google Workspace|gapps_sync_01.png}}
 +
 
 +
=== Verbindung ===
 +
Für die Synchronisierung benötigt MailStore Server Informationen darüber, wie das Google Workspace-Konto angesprochen werden kann.
 +
 
 +
* '''Schlüssel-ID'''<br/>Wählen Sie zum Import des privaten Schlüssels im Schritt [#Erstellen_eines_Dienstkontos|Erstellen eines Dienstkontos] erzeugte JSON-Datei aus.
 
* '''Dienstkonto'''<br/>Das Dienstkonto wird automatisch aus der JSON-Datei ermittelt.
 
* '''Dienstkonto'''<br/>Das Dienstkonto wird automatisch aus der JSON-Datei ermittelt.
*'''Benutzername'''<br/>Die E-Mail-Adresse des G Suite-Administrators (z.B. ''[email protected]'').
+
*'''Benutzername'''<br/>Die E-Mail-Adresse des Google Workspace-Administrators (z.B. [email protected]).
  
 
=== Synchronisierung der Benutzerdatenbank ===
 
=== Synchronisierung der Benutzerdatenbank ===
Nachdem Sie die Verbindungseinstellungen wie oben beschrieben angegeben haben, können Sie in diesem Abschnitt Filterkriterien für den Abgleich mit G Suite festlegen.
+
Nachdem Sie die Verbindungseinstellungen wie oben beschrieben angegeben haben, können Sie in diesem Abschnitt Filterkriterien für den Abgleich mit Google Workspace festlegen.
  
* '''Nur diese Gruppen:'''<br/>Wählen Sie eine oder mehrere G Suite-Gruppen aus, wenn Sie nur deren Mitglieder als MailStore Server-Benutzer anlegen wollen. Dadurch lässt sich verhindern, dass bestimmte Benutzer nach MailStore Server synchronisiert werden.
+
* '''Nur diese Gruppen:'''<br/>Wählen Sie eine oder mehrere Google Workspace-Gruppen aus, wenn Sie nur deren Mitglieder als MailStore Server-Benutzer anlegen wollen. Dadurch lässt sich verhindern, dass bestimmte Benutzer nach MailStore Server synchronisiert werden.
  
{{Verzeichnisdienste_Optionen|G Suite-Konto}}
+
=== Authentifizierung ===
{{Verzeichnisdienste_Standard-Berechtigungen_festlegen|G Suite-Konto}}
+
Die Authentifizierungseinstellungen legen fest, wie MailStore Server Benutzer bei der Anmeldung authentifizieren soll, welche von Google Workspace synchronisiert wurden.
{{Verzeichnisdienste_Synchronisierung_durchfuehren|G Suite-Konto}}
+
 
 +
* '''Methode'''<br/>Stellen Sie sicher, das ''OpenID Connect'' ausgewählt ist. Wie in der Einleitung erwähnt, wird die Option ''IMAP'' nur noch aus Gründen der Abwärtskompatibilität angeboten.
 +
* '''Client ID'''<br/>Tragen Sie die Client ID aus dem Schritt [[#Erstellen_eines_OAuth_2.0_Clients_zur_Authentifizierung_von_Benutzern|Erstellen eines OAuth 2.0 Clients…]] ein.
 +
* '''Clientschlüssel'''<br/>Tragen Sie den Clientschlüssel aus dem Schritt [[#Erstellen_eines_OAuth_2.0_Clients_zur_Authentifizierung_von_Benutzern|Erstellen eines OAuth 2.0 Clients…]] ein.
 +
* '''Weiterleitungs-URI'''<br/>Tragen Sie die gleiche Weiterleitungs-URI wie im Schritt [[#Erstellen_eines_OAuth_2.0_Clients_zur_Authentifizierung_von_Benutzern|Erstellen eines OAuth 2.0 Clients…]] ein.
 +
 
 +
{{Verzeichnisdienste_Optionen|Google Workspace-Konto}}
 +
{{Verzeichnisdienste_Standard-Berechtigungen_festlegen|Google Workspace-Konto}}
 +
{{Verzeichnisdienste_Synchronisierung_durchfuehren|Google Workspace-Konto}}
 
[[Datei:ApplicationIntegration_sync_02.png|center|450px]]
 
[[Datei:ApplicationIntegration_sync_02.png|center|450px]]
 
  
 
{{Verzeichnisdienste Authentifizierung testen}}
 
{{Verzeichnisdienste Authentifizierung testen}}
<p class="msnote">'''Wichtiger Hinweis:''' Damit die Authentifizierung über G Suite funktioniert, muss in den Einstellungen des jeweiligen G&nbsp;Suite-Benutzerkontos die Einstellung ''Weniger sichere Apps zulassen'' eingeschaltet sein, falls dies nicht für alle Nutzer erzwungen wurde (s.o).</p>
+
[[de:Google Workspace-Integration]]
{{Verzeichnisdienste_Anmeldung_mit_Verzeichnisdienst-Zugangsdaten|G Suite-Konto|mads_ldapauth_01.png}}
+
[[en:Google Workspace Integration]]
[[de:G Suite-Integration]]
 
[[en:G Suite Integration]]
 

Aktuelle Version vom 9. Mai 2022, 09:52 Uhr

Neben der manuellen Anlage von Benutzern (diese wird im Kapitel Verwalten von Benutzern beschrieben), kann MailStore Server seine interne Benutzerdatenbank auch mit dem Google Workspace-Konto Ihres Unternehmens abgleichen.

Bei der Synchronisierung werden Benutzerinformationen, wie z.B. Benutzernamen und E-Mail-Adressen, aus dem Google Workspace-Konto in die MailStore Server-Benutzer­datenbank kopiert. Dadurch können sich z.B. Benutzer mit ihren Google Workspace-Zugangsdaten auch an MailStore Server anmelden und E-Mails den Benutzerarchiven automatisch zugeordnet werden. Es werden von MailStore Server keine Änderungen am Google Workspace-Konto selbst vorgenommen. Der Umfang der Synchronisierung lässt sich über Filter einschränken.


Bitte beachten Sie die Ankündigung von Google vom 16. Dezember 2019, den Zugriff auf Google Workspace-Konten von weniger sicheren Apps in Zukunft einzuschränken. Dies betrifft jede Version vor MailStore Server 13, welche daher nicht länger in der Lage sein werden, Benutzer beim Versuch, sich an MailStore Server anzumelden, gegen Google Workspace zu authentifizieren.

In MailStore Server 13 wurde die Unterstützung für moderne Authentifizierungsmethoden via OAuth 2.0 & OpenID Connect entsprechend Googles Empfehlung eingeführt. Obwohl MailStore Server 13 weiterhin Unterstützung einer IMAP-basierten Authentifizierung enthält, behandelt dieses Dokument ausschließlich die Einrichtung unter Verwendung moderner Authentifizierungsmethoden wie in Zukunft von Google verlangt.

Voraussetzungen, Empfehlungen und Einschränkungen

  • Um Googles Anforderungen an Autorisierte Weiterleitungs-URIs zu erfüllen, muss MailStore Server über einen URI erreichbar sein, welcher auf einer öffentlichen Top-Level-Domain endet. Dies bedeutet nicht notwendigerweise, dass er tatsächlich aus dem Internet erreichbar sein muss. Google verwendet zur Validierung die Liste von https://publicsuffix.org.
  • Für eine bestmögliche Benutzererfahrung sollte dem von MailStore Server benutzten Zertifikat von allen Clients und Webbrowsern vertraut werden. Es wird empfohlen, ein von einer vertrauenswürdigen Zertifizierungsstelle signiertes Zertifikat oder Let's Encrypt Zertifikate zu verwenden.
  • Wenn sich Benutzer von außerhalb des Firmennetzwerks ohne VPN über den MailStore Client, das MailStore Outlook-Addin oder den MailStore Web Access an MailStore Server anmelden sollen, müssen die in diesem Artikel beschriebenen URIs auch im Internet per DNS aufgelöst werden können und gegebenenfalls Port-Weiterleitungsregeln zum MailStore Server-Computer auf der Firewall oder dem Router eingerichtet werden.
  • Wird Google zur Authentifizierung von Benutzern verwendet, ist der Zugriff auf das Archiv mittels IMAP aus technischen Gründen nicht möglich.

Projekt bei Google registrieren

Unabhängig davon, ob eigene oder Drittanwendungen wie MailStore Server mit einen Google Workspace-Konto über Google APIs interagieren sollen, müssen diese als Projekt bei Google registriert werden. Dies ist notwendig, um sicherzustellen, dass Zugriff durch externe Anwendungen auf ein notwendiges Minimum beschränkt wird und jede Anwendung eigene Zugangsdaten zur Anmeldung an Google verwendet.

Erstellen eines neuen Projektes

Um ein neues Projekt für MailStore Server bei Google zu registrieren, gehen Sie wie folgt vor:

  • Öffnen Sie die Google Cloud Platform Console.
  • Falls erforderlich, melden Sie sich mit einem Google Workspace-Benutzer an. Es wird dringend empfohlen, einen Benutzer mit administrativen Rechten zu verwenden.
  • Wenn kein Projekt existiert, klicken Sie auf Erstellen auf dem Dashboard. Andernfalls öffnen Sie die Liste der Projekte durch Klicken auf das Projekt Drop-Down-Menü in der Kopfzeile und klicken Sie auf Neues Projekt.
  • Geben Sie einen aussagekräftigen Namen in das Feld Projektname ein, wie z.B. MailStore Server.
  • Überprüfen Sie, dass Organisation der gewünschten Organisation entspricht und passen sie den Speicherort gegebenenfalls an.
  • Klicken Sie auf Erstellen.

Nachdem das Projekt erstellt wurde, stellen Sie sicher, dass dieses in der Projekt Drop-Down-Liste ausgewählt ist, bevor Sie fortfahren.

API-Bibliotheken hinzufügen

  • Öffnen Sie das Navigationsmenü (☰) und wählen Sie APIs & Dienste > Bibliothek aus.
  • Suchen und aktivieren Sie in der API-Bibliothek folgende APIs und Dienste:
    Admin SDK API
    Gmail API

Anpassen des OAuth-Zustimmungsbildschirm

  • Öffnen Sie das Navigationsmenü (☰) und wählen Sie APIs & Dienste > OAuth-Zustimmungsbildschirm aus.
  • Wählen Sie Intern als Nutzertyp aus.
  • Klicken Sie auf Erstellen.
  • Geben Sie einen aussagekräftigen Namen in das Feld Anwendungsname ein, wie z.B. MailStore Server
  • Füllen Sie die weiteren Felder gemäß den Richtlinien Ihrer Organisation aus.
  • Klicken Sie auf Speichern und Fortfahren.
  • Klicken Sie im nächsten Schritt direkt erneut auf Speichern und Fortfahren, da MailStore Server keine Autorisierung durch Benutzer auf Bereiche benötigt.

Erstellen eines Dienstkontos

Ein Dienstkonto für MailStore Server wird benötigt, damit sich dieser an Google anmelden kann und die Authorisierung zur Nutzung bestimmter Google APIs erhält, um Benutzer zu synchronisieren und Zugriff auf Postfächer zu erhalten. Die folgenden Schritte beschrieben die Einrichtung eines solchen Dienstkontos.

  • Öffnen Sie das Navigationsmenü (☰) und wählen Sie APIs & Dienste > Anmeldedaten aus.
  • Klicken Sie auf + Anmeldedaten erstellen und wählen Sie Dienstkonto aus dem Drop-Down-Menü aus.
  • Auf der Seite Dienstkonto erstellen tragen Sie den Namen für das Dienstkonto ein, z.B. MailStore Server Dienst.
  • Die Dienstkonto-ID können Sie in der automatisch erstellten Voreinstellung belassen oder nach Wunsch anpassen.
  • Geben Sie eine Beschreibung ein, wie z.B. Dienstkonto für MailStore Server zum Synchronisieren von Benutzern und Archivieren von Postfächern.
  • Klicken Sie auf Erstellen und fortfahren.
  • Das Dienstkonto benötigt keine Berechtigungen auf Projektebene, weshalb keine Rollen ausgewählt werden müssen. Auch benötigen Nutzer keinen Zugriff auf das Dienstkonto, weshalb im Schritt Nutzern Zugriff auf dieses Dienstkonto erteilen keine Einstellungen vorgenommen werden müssen.
  • Klicken Sie auf Fertig.
  • Klicken Sie in der nun angezeigten Liste der Dienstkonten auf das neu erstellte Dienstkonto, um dessen Eigenschaften zu öffnen.
  • Klicken Sie unter Schlüssel auf Schlüssel hinzufügen und dann auf Neuen Schlüssel erstellen.
  • Wählen sie als Schlüsseltyp JSON aus und klicken Sie auf Erstellen.
  • Die JSON Datei wird automatisch heruntergeladen. Speichern Sie die JSON-Datei an einem sicheren Ort, da er den Zugriff of Cloud-Resourcen Ihrer Organisation ermöglicht.
  • Klicken Sie auf Schliessen.
  • Klicken Sie unter Details auf Erweiterte Einstellungen einblenden.
  • Kopieren Sie unter Domainweite Delegation die Client-ID in die Zwischenablage.
  • Rufen Sie mittels der Schaltfläche die Google Workspace-Admin-Konsole auf und melden Sie sich ggf. erneut mit Ihrem Google Workspace Domänen Administrator an.
  • Öffnen Sie das Navigationsmenü (☰) und wählen Sie Sicherheit > Zugriffs- und Datenkontrolle > API-Steuerung aus.
  • Klicken Sie unter Domainweite Delegierung auf Domainweite Delegierung Verwalten.
  • Klicken Sie auf der Seite Domainweite Delegierung auf Neu hinzufügen.
  • Kopieren Sie die Client ID des OAuth 2.0 Clients aus der Zwischenablage ein.
  • Tragen Sie unter OAuth-Bereiche folgende Bereiche ein:
    https://mail.google.com/, https://www.googleapis.com/auth/admin.directory.group.readonly, https://www.googleapis.com/auth/admin.directory.user.readonly
  • Klicken Sie auf Autorisieren.

Erstellen eines OAuth 2.0 Clients zur Authentifizierung von Benutzern

Um es Benutzers zu ermöglichen, sich an MailStore Server durch Authentifizierung bei Google mit Hilfe des OpenID Connect-Mechanismus anzumelden, muss ein weiterer OAuth 2.0 Client erstellt werden, wie im Folgenden beschrieben:

  • Öffnen Sie die Google Cloud Platform Console.
  • Öffnen Sie das Navigationsmenü (☰) und wählen Sie APIs & Dienste > Anmeldedaten aus.
  • Klicken Sie auf + Anmeldedaten erstellen und wählen Sie OAuth-Client-ID aus dem Drop-Down-Menü aus.
  • Wählen Sie Webanwendung als Anwendungstyp aus.
  • Klicken Sie unter Autorisierte Weiterleitungs-URIs auf + URI hinzufügen.
  • Tragen Sie in das Feld Umleitungs-URI einen URI in Format (ohne die Klammern)
    https://<fqdn>[:<port>]/oidc/signin
    aus folgenden Bestandteilen ein
    https://
    Die Angabe des Protokolls muss verpflichtend https:// lauten. Damit bei der Benutzeranmeldung später keine Zertifikatswarnungen erscheinen, muss dem von MailStore Server verwendeten Zertifikat von den Webbrowsern auf den Client-Geräten vertraut werden.
    FQDN
    Der vollständige DNS-Name, engl. Fully Qualified Domain Name (FQDN), Ihres MailStore Servers, bestehend aus dem Rechnernamen und der DNS-Domäne, z.B. mailstore.example.com. Dieser muss von allen Clients, von denen aus sich Benutzer an MailStore Server anmelden sollen, auflösbar sein.
    Port
    Der TCP-Port des MailStore Web Access (standardmäßig 8462). Dieser muss mit dem in der MailStore Server Dienst-Konfiguration in der Sektion Netzwerkeinstellungen > Dienste > MailStore Web Access / Outlook Add-in (HTTPS) konfigurierten Port übereinstimmen. Der TCP-Port muss nur angegeben werden, wenn dieser vom Standardport des HTTPS-Protokolls (443) abweicht.
    /oidc/signin
    An diesem Endpunkt erwartet MailStore Server die Authentifizierungsantworten von Google Workspace. Dieser Pfad muss exakt so am Ende des Umleitungs-URIs stehen.
  • Klicken Sie auf Erstellen.
  • Kopieren Sie die Client ID und den Clientschlüssel aus den Feldern Ihre Client-ID und Ihr Clientschlüssel an einen sicheren Ort (z.B. Passwort-Tresor) und klicken Sie auf OK.
Beispiele für gültige Umleitungs-URIs
Produkt FQDN Port Resultierender Umleitungs-URI
MailStore Server mailstore.example.com 8462 https://mailstore.example.com:8462/oidc/signin

Umleitungs-URI mit vollständigem DNS-Namen und MailStore Web Access Standardport.
MailStore Server mailstore.example.com 443 https://mailstore.example.com/oidc/signin

Wird der HTTPS-Standardport 443 für den MailStore Web Access oder als Quellport einer Firewall-Port-Weiterleitungsregel verwendet, kann die Portangabe im Umleitungs-URI entfallen.
MailStore SPE archive.example.com 443 https://archive.example.com/<instanceid>/oidc/signin

Die instanceid der Instanz ist Teil der Weiterleitungs-URI.

Konfiguration von MailStore Server

Nachdem das Projekt auf Google Seite erfolgreich eingerichtet wurde, kann nun MailStore Server konfiguriert werden, um Benutzer zu Synchronisieren und gegen Google Workspace zu authentifizieren.

  • Melden Sie sich als MailStore Server-Administrator über den MailStore Client an.
  • Klicken Sie auf Verwaltung > Benutzer und Archive > Verzeichnisdienste.
  • Wählen Sie im Bereich Integration den Verzeichnisdienste-Typ Google Workspace.
Gapps sync 01.png


Verbindung

Für die Synchronisierung benötigt MailStore Server Informationen darüber, wie das Google Workspace-Konto angesprochen werden kann.

  • Schlüssel-ID
    Wählen Sie zum Import des privaten Schlüssels im Schritt [#Erstellen_eines_Dienstkontos|Erstellen eines Dienstkontos] erzeugte JSON-Datei aus.
  • Dienstkonto
    Das Dienstkonto wird automatisch aus der JSON-Datei ermittelt.
  • Benutzername
    Die E-Mail-Adresse des Google Workspace-Administrators (z.B. [email protected]).

Synchronisierung der Benutzerdatenbank

Nachdem Sie die Verbindungseinstellungen wie oben beschrieben angegeben haben, können Sie in diesem Abschnitt Filterkriterien für den Abgleich mit Google Workspace festlegen.

  • Nur diese Gruppen:
    Wählen Sie eine oder mehrere Google Workspace-Gruppen aus, wenn Sie nur deren Mitglieder als MailStore Server-Benutzer anlegen wollen. Dadurch lässt sich verhindern, dass bestimmte Benutzer nach MailStore Server synchronisiert werden.

Authentifizierung

Die Authentifizierungseinstellungen legen fest, wie MailStore Server Benutzer bei der Anmeldung authentifizieren soll, welche von Google Workspace synchronisiert wurden.

Optionen

  • Automatisch Benutzer in MailStore Server löschen
    Hier kann gewählt werden, ob Benutzer, die im Google Workspace-Konto gelöscht wurden, durch die Synchro­nisierung auch in der MailStore Server-Benutzerdatenbank automatisch gelöscht werden sollen. Benutzer, die aus dem Betrachtungsbereich der Einstellungen fallen, werden ebenfalls gelöscht.
    Es werden nur MailStore Server-Benutzer gelöscht, deren Authentifizierungs­methode auf Verzeichnisdienste eingestellt ist.
    Enthält der Archivordner eines solchen Benutzers bereits archivierte E-Mails, wird nur der Benutzereintrag, nicht aber sein Archivordner in MailStore Server gelöscht.

Standard-Berechtigungen festlegen

Benutzer, die aus einem Google Workspace-Konto nach MailStore Server synchronisiert wurden, besitzen standard­mäßig das Recht zum Anmelden am MailStore Server und haben lesenden Zugriff auf ihr eigenes Benutzer­archiv.
Sie haben die Möglichkeit, die Standard-Berechtigungen vor der Synchronisierung anzupassen, um z.B. allen neuen Benutzern das Recht E-Mails archivieren zu geben. Klicken Sie dazu auf die Schaltfläche Standard-Berechtigungen....
Weitere Informationen über die Verwaltung von Benutzerrechten und deren Auswirkungen finden Sie im Kapitel Benutzer, Archive und Berechtigungen. Dort finden Sie auch Hinweise zum Anpassen existierender Berechtigungen.

Die Synchronisierung durchführen

Mit Klick auf Sync testen können Sie die Synchronisierungseinstellungen und das vom Google Workspace-Konto zurückgelieferte Ergebnis überprüfen, ohne dass Änderungen an der MailStore Server-Benutzerdatenbank durchgeführt werden.

Um die Synchronisierung letztendlich durchzuführen, klicken Sie auf Synchronisieren. Das Ergebnis wird dann mit allen an der MailStore Server-Benutzerdatenbank vollzogenen Änderungen angezeigt.

ApplicationIntegration sync 02.png

Sie können die Authentifizierung für einen bestimmten Benutzer testen, indem Sie diesen in der Liste auswählen und dann auf die entsprechende Schaltfläche links unten klicken. Geben Sie anschließend das Kennwort dieses Benutzers ein. Sie erhalten eine Rückmeldung, ob die Authentifizierung erfolgreich war.