Microsoft SharePoint Online-Connector bereitstellen

Sie können Google Cloud Search so einrichten, dass zusätzlich zu den Google Workspace-Inhalten auch Ergebnisse aus den SharePoint Online-Inhalten Ihrer Organisation zurückgegeben werden. Dafür verwenden Sie den SharePoint Online-Connector für Google Cloud Search und konfigurieren ihn für den Zugriff auf eine bestimmte SharePoint-Online-Datenquelle.

Wichtige Aspekte

Berücksichtigte SharePoint-Einstellungen

Der SharePoint Online-Connector für Cloud Search berücksichtigt immer die SharePoint-Einstellung Suchbarkeit, d. h., sie kann nicht überschrieben werden. Bei Entwürfen wird über die Berechtigungen für das Nutzerkonto, mit dem der Connector auf SharePoint Online zugreift, gesteuert, welche Dokumente indexiert und zurückgegeben werden. Wenn das Konto nur eine Leseberechtigung hat („Alles lesen“), werden alle SharePoint-Einstellungen unter „Entwurfselementsicherheit“ beibehalten.

Sie konfigurieren den Connector auch so, dass die Ergebnisse auf Grundlage des Nutzerkontozugriffs beschränkt werden. Wenn Sie für SharePoint-Inhalte das Sicherheits-Trimming anwenden möchten, synchronisieren Sie die folgenden externen Identitäten mit dem Google-Verzeichnis:

  • Office 365 / Azure AD-Nutzer
  • Office 365 / Azure AD-Sicherheitsgruppen
  • SharePoint-Gruppen (mit Office 365-Nutzern und ‑Gruppen als Mitgliedern)

Suchmaschinenoptimierung

Sie können die Anzeige für die Nutzer optimieren. Dafür konfigurieren Sie den Connector so, dass relevantere Suchergebnisse zurückgegeben werden.

Um die API zu verwenden, legen Sie in der Konfigurationsdatei des SharePoint Online-Connectors Werte für Parameter zur HTML-Generierung fest. Mit diesen Parametern können Sie konfigurieren, welche Felder mehr oder weniger Einfluss auf die Treffer haben.

Folgen Sie der Anleitung unter Schema erstellen und registrieren, um ein Schema einzurichten. Beachten Sie beim Einrichten Folgendes:

  • Damit die Namen von SharePoint-Inhaltstypen den entsprechenden Objektdefinitionen zugeordnet werden, normalisiert der Connector die Namen der Inhaltstypen, indem nicht unterstützte Zeichen ausgeschlossen werden. Bei Objektdefinitionen unterstützt die Cloud Search API als gültige Zeichen nur A–Z, a–z und 0–9. Der Inhaltstyp „Ankündigungen“ ist beispielsweise der Objektdefinition „Announcements“ zugeordnet. Der Inhaltstyp „Nachrichtenartikel“ ist „NewsArticle“ zugeordnet (kein Leerzeichen).

  • Wenn der Connector keine Objektdefinition mit einer Objektdefinition abgleichen kann, verwendet er den Fallback-Objekttyp (itemMetadata.objectType). Weitere Informationen zu den Konfigurationsparametern für Metadaten

  • Der Connector ordnet die Namen von SharePoint-Attributen entsprechenden Attributdefinitionen zu.

  • Wenn der Connector bei der Indexierung von Inhalten Microsoft Outlook-MSG-Dateien findet, wird der Inhaltstyp für die Dateien überschrieben und sie werden als application/vnd.ms-outlook. indexiert.

Bekannte Einschränkungen des Connectors

  • Eine Connectorinstanz kann jeweils nur Inhalte aus einer einzelnen Websitesammlung indexieren. Wenn Sie mehrere Websitesammlungen indexieren möchten, richten Sie zusätzliche Connectorinstanzen ein.
  • Der Speicherverbrauch erhöht sich mit der Anzahl der einzelnen Nutzer und Gruppen, die Sie in ACLs für die einzelnen Websitesammlungen verwenden.
  • Löschbenachrichtigungen erfolgen nicht sofort und es kann mehr als 4 Stunden dauern, bis ein Connector erkennt, dass ein Nutzer Inhalte aus dem Quell-Repository gelöscht hat.

Systemanforderungen

Systemanforderungen
Betriebssystem
  • Windows Server 2016
  • Ubuntu
  • Red Hat Enterprise Linux 5.0
  • SUSE Enterprise Linux 10 (64-Bit)
Authentifizierung
  • Live-Authentifizierung
Software
  • SharePoint Online-Umgebung
  • Java JRE 1.8, installiert auf dem Computer, auf dem der SharePoint Online-Connector für Google Cloud Search ausgeführt wird

Connector bereitstellen

Vorbereitung

  1. Erstellen Sie einen privaten Google Workspace-Schlüssel, der die ID Ihres Dienstkontos enthält. Weitere Informationen zum Abrufen eines privaten Schlüssels finden Sie unter Zugriff auf die Google Cloud Search API konfigurieren.

  2. Ihr Google Workspace-Administrator muss eine Datenquelle für die Suche hinzufügen. Notieren Sie sich die ID der Datenquelle.

  3. Wenn der Connector Ergebnisse auf Grundlage von ACLs zurückgibt (Ergebnisse sind nicht öffentlich), muss Ihr Google Workspace-Administrator zwei Identitätsquellen erstellen und Ihnen deren IDs mitteilen:

    • eine für Office 365-Nutzer und ‑Gruppen
    • eine für SharePoint-Gruppen

    Der Administrator muss außerdem die Google Workspace-Kunden-ID Ihrer Organisation abrufen und an Sie weitergeben.

    Weitere Informationen zum Abrufen dieser Werte finden Sie unter Nutzeridentitäten in Cloud Search zuordnen.

  4. Richten Sie ein Nutzerkonto für den Connector ein, der die Administratorberechtigungen für die SharePoint Online-Websitesammlung hat.

  5. Wenn der Connector Ergebnisse auf der Grundlage von ACLs zurückgibt (Ergebnisse sind nicht öffentlich), müssen Sie Anmeldedaten erstellen, um Nutzer und Gruppen aus Ihrem Office 365-Konto zu lesen. Folgen Sie der Anleitung von Microsoft, um eine Azure Active Directory-Anwendung zu erstellen. Wenn Sie die App einrichten:

    1. Geben Sie ihr einen aussagekräftigen Namen, z. B. „gcs-o365-identity-connector“.
    2. Fügen Sie Berechtigungen hinzu. Die App benötigt Lesezugriff auf alle Gruppen (Group.Read.All) und Lesezugriff auf alle Nutzer (User.Read.All).
    3. Notieren Sie sich die folgenden Informationen für die Connector-Konfiguration:
      • Anwendungs-ID
      • Mandant
      • Clientschlüssel

Schritt 1: SharePoint Online-Connector-Software installieren

  1. Klonen Sie das Connector-Repository von GitHub.

    $ git clone https://github.com/google-cloudsearch/sharepoint-connector.git
    $ cd sharepoint-connector
  2. Checken Sie die gewünschte Version des Connectors aus:

    $ git checkout tags/v1-0.0.3
  3. Erstellen Sie einen Build für den Connector.

    $ mvn package

    Wenn Sie beim Erstellen des Connectors Tests überspringen möchten, führen Sie mvn package -DskipTests anstelle von mvn package aus.

  4. Kopieren Sie die ZIP-Datei des Connectors in das lokale Installationsverzeichnis:

    $ cp target/google-cloudsearch-sharepoint-connector-v1-0.0.3.zip installation-dir
    $ cd installation-dir
    $ unzip google-cloudsearch-sharepoint-connector-v1-0.0.3.zip
    $ cd google-cloudsearch-sharepoint-connector-v1-0.0.3

Schritt 2: Konfigurationsdatei für den SharePoint Online-Connector erstellen

  1. Erstellen Sie im selben Verzeichnis wie die Connector-Installation eine neue Datei und nennen Sie sie sharepoint-online-connector.config. Wenn Sie viele Connector-Instanzen ausführen möchten, fügen Sie dem Namen Details hinzu, damit Sie die Instanzen voneinander unterscheiden können.

  2. Fügen Sie dem Dateiinhalt Parameter als Schlüssel/Wert-Paare wie im folgenden Beispiel hinzu:

    ### SharePoint Online connector configuration ###
    
    # Required parameters for data source access
    api.sourceId=08ef8becd116faa4546b8ca2c84b2879
    api.serviceAccountPrivateKeyFile=service_account.json
    
    # Required parameters for SharePoint Online access
    sharepoint.server=https://mydomain.onmicrosoft.com
    sharepoint.siteCollectionOnly=true
    sharepoint.username=admin@mydomain.onmicrosoft.com
    sharepoint.password=pa$sw0rd
    sharepoint.formsAuthenticationMode=LIVE
    sharepoint.deploymentType=ONLINE
    
    # SharePoint identity mapping parameters
    api.identitySourceId=08ef8becd116faa475de26d9b291fed9
    api.referenceIdentitySources=defaultIdentitySource
    api.referenceIdentitySource.defaultIdentitySource.id=08ef8becd116faa5d3783f8c5a80e5aa
    
    # Optional SharePoint List Item metadata parameters
    contentTemplate.sharepointItem.title=Title
    contentTemplate.sharepointItem.unmappedColumnsMode=APPEND
    

    Ausführliche Beschreibungen der einzelnen Parameter finden Sie im Abschnitt Konfigurationsparameter.

  3. Optional: Konfigurieren Sie bei Bedarf weitere Connector-Parameter. Weitere Informationen zu den von Google bereitgestellten Connectorparametern

Schritt 3: Logging für den SharePoint Online-Connector einrichten

  1. Erstellen Sie einen Ordner namens logs im selben Verzeichnis, in dem sich die Binärdatei des Connectors befindet.

  2. Erstellen Sie dort außerdem eine Latin-1-codierte Datei namens logging.properties und fügen Sie den folgenden Inhalt ein:

    handlers = java.util.logging.ConsoleHandler,java.util.logging.FileHandler
    # Default log level
    .level = INFO
    # uncomment line below to increase logging level for SharePoint APIsa
    #com.google.enterprise.cloudsearch.sharepoint.level=FINE
    
    # uncomment line below to increase logging level to enable API trace
    #com.google.api.client.http.level = FINE
    java.util.logging.ConsoleHandler.level = INFO
    java.util.logging.FileHandler.pattern=logs/connector-sharepoint.%g.log
    java.util.logging.FileHandler.limit=10485760
    java.util.logging.FileHandler.count=10
    java.util.logging.FileHandler.formatter=java.util.logging.SimpleFormatter
    

Schritt 4: SharePoint Online-Identitätsconnector konfigurieren

Dieser Schritt ist erforderlich, um identitätsbasierte SharePoint Online-ACLs auf Suchergebnisse anzuwenden. Wenn Sie den Connector mit öffentlichen ACLs eingerichtet haben, können Sie diesen Schritt überspringen.

  1. Erstellen Sie im selben Verzeichnis wie die Installation des SharePoint Online-Connectors eine neue Datei und nennen Sie sie sharepoint-online-identity-connector.config.

  2. Fügen Sie dem Dateiinhalt Parameter als Schlüssel/Wert-Paare wie im folgenden Beispiel hinzu:

    ### SharePoint Online identity connector configuration ###
    # Required parameters for data source access
    api.customerId=C05d3djk8
    api.serviceAccountPrivateKeyFile=service_account.json
    
    # Required parameters for SharePoint Online access
    sharepoint.server=https://mydomain.onmicrosoft.com
    sharepoint.siteCollectionOnly=true
    sharepoint.username=admin@mydomain.onmicrosoft.com
    sharepoint.password=pa$sw0rd
    sharepoint.formsAuthenticationMode=LIVE
    sharepoint.deploymentType=ONLINE
    
    # SharePoint identity mapping parameters
    api.identitySourceId=08ef8becd116faa475de26d9b291fed9
    api.referenceIdentitySources=defaultIdentitySource
    api.referenceIdentitySource.defaultIdentitySource.id=08ef8becd116faa5d3783f8c5a80e5aa
    

    Die Werte sind fast die gleichen wie die des SharePoint Online-Connectors, mit der Ausnahme, dass der Parameter nicht api.sourceId sondern api.customerId lautet. Der Wert von api.customerId ist die Kundennummer, die Sie von Ihrem Google Workspace-Administrator erhalten haben.

Schritt 5: Office 365-Identitätsconnector installieren

Dieser Schritt ist erforderlich, um identitätsbasierte SharePoint Online-ACLs auf Suchergebnisse anzuwenden. Wenn Sie den Connector mit öffentlichen ACLs eingerichtet haben, können Sie diesen Schritt überspringen.

  1. Klonen Sie das Connector-Repository von GitHub.

    $ git clone https://github.com/google-cloudsearch/office-365-connector.git
    $ cd office-365-connector
  2. Checken Sie die gewünschte Version des Connectors aus:

    $ git checkout tags/v1-0.0.3
  3. Erstellen Sie einen Build für den Connector.

    $ mvn package

    Wenn Sie beim Erstellen des Connectors Tests überspringen möchten, führen Sie mvn package -DskipTests anstelle von mvn package aus.

  4. Kopieren Sie die ZIP-Datei des Connectors in das lokale Installationsverzeichnis:

    $ cp target/google-cloudsearch-office-365-connector-v1-0.0.3.zip installation-dir
    $ cd installation-dir
    $ unzip google-cloudsearch-office-365-connector-v1-0.0.3.zip
    $ cd google-cloudsearch-office-365-connector-v1-0.0.3

Schritt 6: Office 365-Identitätsconnector konfigurieren und Logging einrichten

  1. Erstellen Sie eine neue Datei namens o365-identity-connector.config im Verzeichnis, in dem sich auch die Connector-Installation befindet.

  2. Fügen Sie dem Dateiinhalt Parameter als Schlüssel/Wert-Paare wie im folgenden Beispiel hinzu. Hinweis: Alle Parameter sind erforderlich.

    ### Office 365 Identity connector configuration ###
    api.identitySourceId=12345abcde api.customerId=abcde12345 o365.clientId=a63c6eb3-29e7-486 o365.tenant=185ef9ed-29e7-486 o365.clientSecret=raHJN15vRLBKs

    Eine ausführliche Beschreibung der einzelnen Parameter finden Sie in der Referenz zur Konfiguration des Office 365-Identitätsconnectors.

  3. Erstellen Sie einen Ordner namens logs im selben Verzeichnis, in dem sich die Binärdatei des Connectors befindet.

  4. Erstellen Sie dort außerdem eine ASCII- oder UTF-8-Datei namens logging.properties und fügen Sie den folgenden Inhalt ein:

    handlers = java.util.logging.ConsoleHandler,java.util.logging.FileHandler
    # Default log level
    .level = INFO
    # uncomment line below to increase logging level for Office 365 APIs
    #com.google.enterprise.cloudsearch.o365.level=FINE
    
    # uncomment line below to increase logging level to enable Google API traces
    #com.google.api.client.http.level = FINE
    java.util.logging.ConsoleHandler.level = INFO
    java.util.logging.FileHandler.pattern=logs/connector-o365.%g.log
    java.util.logging.FileHandler.limit=10485760
    java.util.logging.FileHandler.count=10
    java.util.logging.FileHandler.formatter=java.util.logging.SimpleFormatter
    

Schritt 7: SharePoint Online-Connector starten

In den folgenden Schritten ordnen Sie die Hauptkonten aus Office 365 und der SharePoint-Websitesammlung den Identitäten im Cloud Identity-Dienst zu. Die Synchronisierung erfolgt über den Office 365-Identitätsconnector und den SharePoint Online-Identitätsconnector.

Nachdem der Office 365-Connector die Nutzer und Gruppen synchronisiert hat, führen Sie den SharePoint Online-Identitätsconnector aus, um die Gruppen der SharePoint-Websitesammlung zu synchronisieren. Anschließend führen Sie den SharePoint Online-Connector aus, um Ergebnisse für die Cloud Search-Nutzer zu indexieren und bereitzustellen.

  1. Führen Sie den Office 365-Identitätsconnector aus:

    $ java -Djava.util.logging.config.file=logging.properties -jar google-cloudsearch-office-365-connector-v1-0.0.3.jar -Dconfig=o365-identity-connector.config
  2. Führen Sie den SharePoint Online-Identitätsconnector aus:

    $ java -Djava.util.logging.config.file=logging.properties -cp "google-cloudsearch-sharepoint-connector-v1-0.0.3.jar" com.google.enterprise.cloudsearch.sharepoint.SharePointIdentityConnector -Dconfig=sharepoint-online-identity-connector.config
  3. Führen Sie den SharePoint Online-Connector aus:

    $ java -Djava.util.logging.config.file=logging.properties -jar google-cloudsearch-sharepoint-connector-v1-0.0.3.jar -Dconfig=sharepoint-online-connector.config

Referenz zu Konfigurationsparametern

Zugriff auf Datenquellen

Einstellung Parameter
ID der Datenquelle api.sourceId=1234567890abcdef

Erforderlich. Die ID der Google Cloud Search-Datenquelle, die vom Google Workspace-Administrator eingerichtet wurde.

Pfad zur privaten Schlüsseldatei des Dienstkontos api.serviceAccountPrivateKeyFile=PrivateKey.json

Erforderlich. Der Pfad zur Schlüsseldatei des Google Cloud Search-Dienstkontos.

SharePoint Online-Zugriff

Einstellung Parameter
Voll qualifizierter Domainname der SharePoint-Websitesammlung sharepoint.server=http://yoursharepoint.example.com/

Erforderlich. Wenn der Domainname nicht voll qualifiziert ist, aktivieren Sie die DNS-Überschreibung auf dem Connectorhost.

Modus „Nur Websitesammlung“ sharepoint.siteCollectionOnly=true

Erforderlich. Legen Sie für SharePoint Online den Wert true fest.

SharePoint-Nutzername sharepoint.username=username

Erforderlich. Der Nutzername für das Konto, mit dem auf SharePoint Online zugegriffen wird.

SharePoint-Passwort sharepoint.password=user_password

Erforderlich. Das Passwort für das Konto, mit dem auf SharePoint Online zugegriffen wird.

Authentifizierungsmodus sharepoint.formsAuthenticationMode=LIVE

Erforderlich. Bei SharePoint Online lautet der Wert immer „LIVE“.

Deployment-Typ sharepoint.deploymentType=ONLINE

Erforderlich. Bei SharePoint Online lautet der Wert immer „ONLINE“.

SharePoint-Identitätszuordnung

Einstellung Parameter
ID der Identitätsquelle api.identitySourceId=1234567890abcdef

Erforderlich. Die ID der Cloud Search-Identitätsquelle für die Identitätsquelle der SharePoint-Gruppen.

Verwendete Identitätsquellen api.referenceIdentitySources=defaultIdentitySource

Erforderlich. Für SharePoint Online lautet der Wert immer „defaultIdentitySource“.

IDs der verwendeten Identitätsquellen api.referenceIdentitySource.defaultIdentitySource.id=112233abcd

Erforderlich. Die ID der Cloud Search-Identitätsquelle für die Identitätsquelle der Office 365-Nutzer und ‑Gruppen.

Generierung von HTML-Inhalten

Einstellung Parameter
Titelfeld für HTML-Vorlage contentTemplate.sharePointItem.title=Title

Das SharePoint-Feld, das als Titel der HTML-Vorlage für den generierten HTML-Inhalt verwendet werden soll.

Felder, die im HTML-Inhalt eine hohe Suchqualität haben sollen contentTemplate.sharePointItem.quality.high=highField1[,highField2,...]

Eine durch Kommas getrennte Liste der Felder, die im generierten HTML-Inhalt als Felder mit hoher Suchqualität enthalten sein sollen. Wenn die Suchbegriffe mit diesen Feldern übereinstimmen, werden die Ergebnisse höher eingestuft.

Felder, die im HTML-Inhalt eine mittlere Suchqualität haben sollen contentTemplate.sharePointItem.quality.medium=mediumField1[,mediumField2,...]

Eine durch Kommas getrennte Liste der Felder, die im generierten HTML-Inhalt als Felder mit mittlerer Suchqualität enthalten sein sollen.

Felder, die im HTML-Inhalt eine niedrige Suchqualität haben sollen contentTemplate.sharePointItem.quality.low=lowField1[,lowField2,...]

Eine durch Kommas getrennte Liste der Felder, die im generierten HTML-Inhalt als Felder mit niedriger Suchqualität enthalten sein sollen.

Nicht zugeordnete Spalten im HTML-Inhalt contentTemplate.sharepointItem.unmappedColumnsMode=APPEND

Vorgehensweise des Connectors bei der Verarbeitung nicht zugeordneter Spalten. Mögliche Werte sind APPEND (Standardeinstellung) oder IGNORE.

  • APPEND: Der Connector generiert HTML-Inhalte mit allen Feldern, einschließlich derjenigen, für die keine bestimmte Suchqualität (hoch, mittel, niedrig) konfiguriert wurde.
  • IGNORE: Der Connector generiert HTML-Inhalte nur mit den zugeordneten Feldern.

Konfiguration des Office 365-Identitätsconnectors

Einstellung Parameter
ID der Identitätsquelle api.identitySourceId=1234567890abcdef

Erforderlich. Die ID der Office 365-Identitätsquelle. Dieser Wert sollte mit dem Wert von „api.referenceIdentitySource.defaultIdentitySource.id“ in der Konfiguration des SharePoint Online-Connectors übereinstimmen.

Google-Kundennummer api.customerId=c1b1d1e1

Erforderlich. Die Google Workspace-Kundennummer Ihrer Organisation.

Office 365-Anwendungs-ID o365.clientId=a63c6eb3-29e7-486

Erforderlich. Die Anwendungs-ID aus der Office 365-Anwendungseinrichtung.

Office 365-Mandant o365.tenant=185ef9ed-29e7-486

Erforderlich. Der Mandant für Ihr Office 365-Konto (Ihre Azure Activity Directory App)

Office 365-Clientschlüssel o365.clientSecret=raHJN15vRLBKs

Erforderlich. Anmeldedatenschlüssel aus der Einrichtung der Office 365-Anwendung