Copyright ©
Mindbreeze GmbH, A-4020 Linz, 2024.
Alle Rechte vorbehalten. Alle verwendeten Hard- und Softwarenamen sind Handelsnamen und/oder Marken der jeweiligen Hersteller.
Diese Unterlagen sind streng vertraulich. Durch die Übermittlung und Präsentation dieser Unterlagen alleine werden keine Rechte an unserer Software, an unseren Dienstleistungen und Dienstleistungsresultaten oder sonstigen geschützten Rechten begründet. Die Weitergabe, Veröffentlichung oder Vervielfältigung ist nicht gestattet.
Aus Gründen der einfacheren Lesbarkeit wird auf die geschlechtsspezifische Differenzierung, z.B. Benutzer/-innen, verzichtet. Entsprechende Begriffe gelten im Sinne der Gleichbehandlung grundsätzlich für beide Geschlechter.
Grundsätzlich verwendet der Google Drive Connector bei Kommunikation mit Google eine Server-to-Server Authentifizierung. Dies ist die von Google empfohlene Methode, es muss kein Mensch anwesend sein, um den Connector zu betreiben. Für diese Methode muss ein Google-Service-Account vorhanden sein, welcher die Option „G-Suite Domain-wide Delegation“ besitzt. Damit kann dieser Account beliebige Personen in der G-Suite verkörpern (inpersonification) und dessen Dateien lesen. Wenn diese Methode verwenden können, halten Sie sich an die folgenden Abschnitte „Service Account“.
Wenn Sie keinen Google Service Account zur Verfügung haben, gibt es eine alternative Methode mit OAuth, den Google Drive Connector zu betreiben. Es wird kein Google Service Account benötigt. Die OAuth Methode ist nicht empfohlen, diese soll nur in Ausnahmefällen verwendet werden. Bei dieser sehr komplizierten Methode muss die Person, dessen Dateien Indiziert werden sollen, anwesend sein, um im Google-OAuth Prozess dessen Passwort einmalig einzugeben und die Leseberechtigungen zu akzeptieren. Wenn sie diese nicht empfohlene Methode verwenden wollen, halten Sie sich an die folgenden Abschnitte „OAuth“.
Navigieren Sie zu console.developers.google.com/ und melden Sie sich an.
Klicken Sie auf Credentials an der linken Seite und dann klicken Sie auf „Manage Service Accounts“
Klicken Sie auf „Create Service Account“ und geben Sie einen Kontonamen ein. Wählen Sie den „Service Account Admin“ Rolle, und Klicken Sie auf „Enable G Suite Domain-wide Delegation“.
Öffnen Sie die Konto-Optionen an der rechten Seite und Klicken Sie auf „Create Key“
Wählen Sie „P12“ und speichern Sie die .p12 Datei.
Hinweis: Die .p12 Datei ist notwendig für den Google Driver Crawler und den Google Drive Principal Resolution Service Service.
Jetzt sollten Sie die Client-ID Ihres Google-Service-Accounts sehen. Diese ID ist für den nächsten Schritt (1.2.2) notwendig und sollte notiert werden.
Navigieren Sie zu Gsuite https://gsuite.google.com/intl/de/ und loggen Sie sich mit Ihrer Domäne ein, mit Zugriff auf die Admin-Konsole. Wenn notwendig, loggen Sie sich mit dem gleichen Benutzer ein, mit dem Sie sich auch unter console.developers.google.com angemeldet haben.
Klicken Sie auf Sicherheit > Mehr Anzeigen > Erweiterte Einstellungen > API-Clientzugriff verwalten
Geben Sie die Client ID des Google-Service-Accounts im Clientname Felder ein.
Geben Sie die richtigen API-Bereiche ein.
Notwendig Einträge:
https://www.googleapis.com/auth/admin.directory.group.readonly,https://www.googleapis.com/auth/admin.directory.user.readonly,https://www.googleapis.com/auth/drive.readonly
Ein Google Account innerhalb einer GSuite-Domäne ist erforderlich. Der Account wird benutzt um Dateien zu Indizieren, auf die dieser Account zugreifen kann.
Dieser Schritt wird benötigt, um vom Account auf die Google Drive Dateien zugreifen zu können.
Rufen Sie die Library Page in der API Console auf. (https://console.developers.google.com/apis/library). Stellen Sie sicher, dass die mit dem richtigen Account angemeldet sind.
Klicken Sie auf “G Suite APIs” -> “Drive API”
Wenn die Google Drive API Seite Folgendes ausgibt: “A project is needed to enable APIs”, klicken Sie auf “Create Project”, dann “Create” und geben Sie einen Projektnamen an z.B.: “Mindbreeze Crawler”.
Zurück auf der Google Drive API Seite, klicken Sie auf den “Enable” Knopf.
Öffnen Sie die Credentials Seite indem Sie auf den “Credentials” Knopf auf der linken Seite klicken. (https://console.developers.google.com/apis/credentials)
Klicken Sie “Create credentials” und wählen Sie “OAuth Client ID”
Wenn die Seite Sie auffordert, den Consent Screen einzurichten, klicken Sie auf “Configure consent screen“. Setze sie den “Product name shown to users” auf z.B.: “Mindbreeze Crawler”. Anschließend, klicken Sie auf “Save”.
Zurück auf der Create client ID Seite fragt Sie ein Wizard welchen Application type Sie nutzen wollen. Wählen Sie “Other” aus und setzten Sie einen Namen z.B.: “Mindbreeze Crawler” und klicken Sie auf “Create”.
Ein Popup-Dialog erscheint “OAuth Client”. Schließen Sie den Dialog indem Sie auf “OK” klicken. Die angezeigten Informationen werden später separat heruntergeladen. Das neu erzeugte Credential erscheint in der Liste. Klicken Sie auf das “Download JSON” Icon auf der rechten Seite, um das Credential als JSON Datei herunterzuladen.
Dieser Schritt ist notwendig um den Account Zugriff auf die Benutzer und Gruppennamen der GSuite zu geben. Aus diesen Informationen werden die Zugriffsrechte der für eine spezifische Datei bei der Suche berechnet.
Öffnen Sie die Library Seite (https://console.developers.google.com/apis/library) in der API Console. Stellen Sie sicher, dass Sie mit dem richtigen Account angemeldet sind.
Klicken Sie auf “G Suite APIs” -> “Admin SDK”
Stellen Sie sicher, dass das richtige Projekt (z.B.: “Mindbreeze Crawler”) oben ausgewählt ist. Anschließend klicken Sie auf “Enable”.
Es werden nur die Berechtigungen Users.Read und Groups.Read benötigt. Das Bedeutet, dass der Google Account nur in der Lage ist, seine eigenen Dateien und die Namen der Gruppen und Benutzer in der GSuite Domäne zu lesen. Der Google Account kann keine anderen Benutzer impersonieren. Der Google Account kann keinen Dateien anderer Benutzer lesen, außer die Dateien wurden explizit freigegeben.
Öffnen Sie die Google Admin Console (https://admin.google.com) und melden Sie sich mit einem GSuite Account mit Administrator Berechtigungen an.
Klicken Sie auf “Admin roles” um auf die Admin roles Seite zu navigieren.
Klicken Sie auf “Create a new Role”. Diese Rolle wird mit minimalen Zugriffsrechten Konfiguriert. Wählen Sie einen Namen (z.B.: “Mindbreeze Crawler”) und klicken Sie auf “Create”.
Das “Privileges” Tab der neuen Rolle erscheint. Unter dem Abschnitt “Admin API Privileges”, klappen Sie den Eintrag “Users” aus und haken Sie das Kästchen “Read” an. Anschließend klappen Sie den Eintrag “Groups” und haken Sie das Kästchen “Read” an. Anschließend klicken Sie auf “Save” unten. Die Rolle “Mindbreeze Crawler” hat nun die “Admin API” Berechtigungen “Users.Read” und “Groups.Read”.
Navigieren Sie zu dem “Admins” Tab oben. Klicken Sie auf “Assign Admins”. Geben Sie die E-Mail-Adresse des Google Accounts an, den Sie für das aktivieren des Admin SDK benutzt haben. Klicken Sie auf “Confirm Assignment”. Die Rolle “Mindbreeze Crawler” hat nun einen zugewiesenen Administrator.
Vor der Installation des Google Drive Konnektors muss sichergestellt werden, dass der Mindbreeze Server installiert und der Google Drive Konnektor in der Lizenz inkludiert ist. Zur Installation oder Aktualisierung des Konnektors verwenden Sie bitte das Mindbreeze Management Center.
Zur Installation des Plugins, öffnen Sie das Mindbreeze Management Center. Wählen Sie aus dem linken Menü den Punkt „Configuration“ aus. Anschließend navigieren Sie auf den Reiter „Plugins“. Im Abschnitt „Plugin Management“ wählen Sie die entsprechende Zip-Datei aus laden sie durch Auswahl der Schaltfläche „Upload“ hoch. Damit wird der Konnektor automatisch installiert oder gegebenenfalls aktualisiert. In diesem Zuge werden die Mindbreeze Dienste neugestartet.
Wählen Sie zur Konfiguration die Installationsmethode „Advanced“.
Wählen Sie im neuen oder bestehenden Service in der Einstellung „Service“ die Option Google Drive Principal Resolution Service aus. Für mehr Informationen über das Erstellen und das grundlegende Konfigurieren eines Cache für einen Principal Resolution Service, siehe Installation & Konfiguration - Caching Principal Resolution Service.
Im Abschnitt „Connection Settings“ setzen Sie die Verbindungseinstellungen. Der Connector unterstützt zwei Konfigurationsvarianten: Service Account (empfohlen) und OAuth.
Folgende Einstellungen müssen gesetzt werden:
„GSuite Domain“ | Domain, die in Google Drive verwendet wird |
“Service Account Name“ | E-Mail Adresse des Google Service-Accounts, endet üblicherweise auf .gserviceaccount.com |
“GSuite Admin User Mail Address” | E-Mail Adresse des GSuite Administrators, endet üblicherweise auf @mycompany.com |
„Path to P12 Certificate“ | Pfad zum P12-Zertifikat, welches beim Erstellen des Google-Service-Accounts erzeugt wurde. |
Zusätzlich sind im Abschnitt „Cache Settings“ folgende Einstellungen zu setzen:
„Database Directory Path“ | Verzeichnis in dem die Cache-Daten abgelegt werden dürfen |
„Cache Update Interval (Minutes)“ | Dauer, in Minuten, in der sich der Cache aktualisiert. |
Folgende Einstellungen müssen gesetzt werden:
„GSuite Domain“ | Domain, die in Google Drive verwendet wird |
“Use OAuth instead” | Anhaken, damit OAuth verwendet wird |
„Client Secret JSON File Path“ | Pfad zur JSON-Datei, welche beim Anlegen der OAuth-Credentials heruntergeladen wurde. |
„Credential Persistence Directory Path“ | Pfad zu einem Verzeichnis, in dem die Credentials gespeichert werden können. |
„OAuth response receive Port (HTTP)“ | Port zum Empfang des OAuth-Codes. Wählen Sie einen freien Port aus. Der Port wird nur beim initialen Setup geöffnet. |
Zusätzlich sind im Abschnitt „Cache Settings“ folgende Einstellungen zu setzen:
„Database Directory Path“ | Verzeichnis in dem die Cache-Daten abgelegt werden dürfen |
„Cache Update Interval (Minutes)“ | Dauer, in Minuten, in der sich der Cache aktualisiert. |
Navigieren Sie auf den Reiter „Indices“ und klicken Sie auf das Symbol „Add new index“ rechts oben, um einen neuen Index zu erzeugen.
Geben Sie den Pfad zum Index ein und ändern Sie gegebenenfalls des Display Name.
Fügen Sie eine neue Datenquelle durch Klick auf das Symbol „Add new custom source“ rechts oben hinzu. Wählen Sie die Category „Google Drive“. Wählen Sie bei „Caching Principal Resolution Service“ den zuvor konfigurierten Google Drive Caching Principal Resolution Service aus.
Im Abschnitt „Connection Settings“ setzen Sie die Verbindungseinstellungen. Der Connector unterstützt zwei Konfigurationsvarianten: Service Account (empfohlen) und OAuth.
Folgende Einstellungen müssen gesetzt werden:
“Service Account Name“ | E-Mail Adresse des Google Service-Accounts, endet üblicherweise auf .gserviceaccount.com |
“GSuite Admin User Mail Address” | E-Mail Adresse des GSuite Administrators, endet üblicherweise auf @mycompany.com |
„Path to P12 Certificate“ | Pfad zum P12-Zertifikat, welches beim Erstellen des Google-Service-Accounts erzeugt wurde. |
Stellen Sie sicher, dass Sie bereits den Google Drive Caching Principal Resolution Service erfolgreich eingerichtet haben.
Folgende Einstellungen müssen gesetzt werden:
“Use OAuth instead” | Anhaken, damit OAuth verwendet wird |
„Client Secret JSON File Path“ | Pfad zur JSON-Datei, welche beim Anlegen der OAuth-Credentials heruntergeladen wurde. |
„Credential Persistence Directory Path“ | Pfad zu einem Verzeichnis, in dem die Credentials gespeichert werden können. Wählen Sie dasselbe Verzeichnis wie beim Google Drive Caching Principal Resolution Service. |
„OAuth response receive Port (HTTP)“ | Port zum Empfang des OAuth-Codes. Wählen Sie einen freien Port aus. Der Port wird nur beim initialen Setup geöffnet. |
Damit diese Einstellungen sichtbar werden, aktivieren sie in den Filter Tab rechts oben die Option „Advanced“. Folgende Einstellungen sind verfügbar:
Im Abschnitt „Crawer Settings“:
„Maximum File Size (MB)“ | Maximale Dateigröße. Größere Dateien werden ignoriert. Dies ist bei Google-Docs Objekten wirkungslos |
„Corpora“ | Bestimmt, welcher Dokumentenkörper indiziert wird. Verfügbar sind die Werte „User“ (Indiziert Dokumente des Crawling Benutzers) und „Domain“ (Indiziert Dokumente, die in der Domain des Crawling Benutzers freigegeben wurden). Standardwert: „User“ |
„Number of Crawler Threads“ | Anzahl der Threads, die parallel Dokumente herunterladen. Eine zu hohe Anzahl kann zu Fehlern der Google-Drive API führen. |
„Max Fetch Retry Count“ | Bei gewissen Fehlern beim Herunterladen eines Dokuments versucht der Connector erneut, das Dokument herunterzuladen. Dies bestimmt die maximale Anzahl der Versuche. |
„Exponential Backoff Wait Time (s)“ | Bei gewissen Fehlern beim Herunterladen eines Dokuments versucht der Connector erneut, das Dokument herunterzuladen. Vor jedem Versuch wartet der Connector die eingestellte Zeit ab. Bei jedem weiteren Versuch wird die Wartezeit verdoppelt. (Exponential Backoff) |
Im Abschnitt „Content Settings“:
„Exclude MIME Types Pattern“ | Wenn der MIME-Typ eines Dokuments diesem regulären Ausdruck entspricht, wird das Dokument ignoriert. Beispiel: application/vnd\.google\-apps.* ignoriert alle Google-Docs Dokumente. |
„Exclude Filename Pattern“ | Wenn der Dateinamen eines Dokuments diesem regulären Ausdruck entspricht, wird das Dokument ignoriert. Beispiel: .*\.zip ignoriert alle ZIP-Archive. |
„Enable GoogleDrive Delta Crawling“ | Wenn gesetzt, werden von der GoogleDrive API nur Änderungen an Files abgeholt anstatt über die ganze GoogleDrive Instanz zu crawlen. |