Microsoft Windows File Systems-Connector bereitstellen

Sie können Google Cloud Search so einrichten, dass zusätzlich zu den Google Workspace-Inhalten auch Ergebnisse aus den Microsoft Windows-Freigaben Ihrer Organisation zurückgegeben werden. Dafür verwenden Sie den File Systems-Connector von Cloud Search und konfigurieren ihn für den Zugriff auf bestimmte Windows-Freigaben. Für eine einzelne Connectorinstanz können mehrere Microsoft Windows-Freigaben verwendet werden.

Wichtige Hinweise

Lesen Sie vor der Bereitstellung des File Systems-Connectors die folgenden Hinweise.

Kontinuierliche automatische Updates

Der Connector überwacht standardmäßig Startpfade (Werte aus fs.src in der Konfigurationsdatei), wenn er gestartet wird. Wenn das Dateisystem Änderungen an den Inhalts- oder Zugriffssteuerungen meldet, wird der Connector angewiesen, das Dateisystem noch einmal zu crawlen. Dieses erneute Crawling kann ressourcenintensiv sein. Wenn Sie das Monitoring deaktivieren möchten, setzen Sie fs.monitorForUpdates auf false. Dadurch wird die Ressourcennutzung reduziert, aber die Änderungen werden erst entsprechend später im Connector widergespiegelt. Weitere Informationen

DFS-Zugriffskontrolle

Im DFS-System wird für Links die Zugriffssteuerung angewendet und normalerweise hat jeder DFS-Link eine eigene ACL. DFS verwendet die zugriffsbasierte Aufzählung (Access-based Enumeration, ABE), um die an einen Nutzer zurückgegebenen Links einzuschränken. Wenn Basisverzeichnisse durch ABE isoliert werden, erhalten Nutzer möglicherweise nur eine Teilmenge der DFS-Links oder auch nur einen einzigen Link. Beim Durchlaufen eines DFS-Systems berücksichtigt der Connector die DFS-Link-ACL und die Freigabe-ACL des Ziels. Die Freigabe-ACL übernimmt die Einstellungen der DFS-ACL.

Bekannte Einschränkungen

In diesem Abschnitt werden die bekannten Einschränkungen des Dateisystem-Connectors aufgeführt.

  • Dateisystem: Der Connector unterstützt weder zugeordnete noch lokale Laufwerke.
  • Verteiltes Dateisystem: Ein Laufwerk, das einem UNC-DFS zugeordnet ist, funktioniert nicht richtig und einige ACLs werden möglicherweise nicht richtig gelesen.
  • Der Connector unterstützt DFS-Namespaces und ‑Links, jedoch keine regulären Ordner im DFS-Namespace.
  • Dateilinks in cloudsearch.google.com oder von der Query API zurückgegebene Dateilinks können in den meisten Browsern nicht angeklickt werden.

Systemanforderungen

Bevor Sie den File Systems-Connector bereitstellen, sollten Sie prüfen, ob der Hostcomputer die folgenden Anforderungen erfüllt:

Systemanforderungen
Betriebssystem
  • Windows Server 2016
  • Windows Server 2012
  • Windows Server 2008 R2
Software
  • Java JRE 1.8 ist auf dem Computer installiert, auf dem der Connector ausgeführt wird.
Dateisystemprotokolle
  • Server Message Block (SMB) – SMB1
  • Server Message Block (SMB) – SMB2
  • Distributed File System (DFS)

Nicht unterstützt:Lokale Windows-Dateisysteme, NFS 2.0, NFS 3.0 oder lokale Linux-Dateisysteme.

Connector bereitstellen

So stellen Sie den File Systems-Connector bereit:

Vorbereitung

Bevor Sie den Connector bereitstellen, muss Ihre Umgebung die folgenden Komponenten enthalten:

  • Google Workspace-Informationen zum Herstellen von Verbindungen:

    Normalerweise erhalten Sie diese Anmeldedaten von Ihrem Google Workspace-Administrator.

  • Prüfen Sie, ob das Windows-Konto alle erforderlichen Berechtigungen hat.

Erforderliche Berechtigungen für Microsoft Windows-Konto

Das Windows-Konto, unter dem der Connector ausgeführt wird, muss die folgenden Berechtigungen haben:

  • Ordnerinhalte auflisten
  • Dokumentinhalte lesen.
  • Datei- und Ordnerattribute lesen.
  • Durch Zugriffssteuerungslisten (Access Control Lists, ACLs) festgelegte Leseberechtigungen für Dateien und Ordner.
  • Grundlegende Attribute schreiben.

Die Mitgliedschaft in einer dieser Gruppen gewährt in der Regel ausreichende Berechtigungen: Administratoren, Hauptnutzer, Druckbediener oder Serverbediener.

Schritt 1: Connector installieren

Laden Sie das Connector-Repository von GitHub herunter oder klonen Sie es und erstellen Sie dann das Connector-Paket.

  1. Rufen Sie das Connector-Repository von GitHub ab und erstellen Sie dafür einen Build.

    So verwenden Sie Git auf dem Windows-Server:

    > git clone https://github.com/google-cloudsearch/windows-filesystems-connector.git
    > cd windows-filesystems-connector
    > git checkout tags/v1-0.0.3

    So laden Sie die Datei direkt herunter:

    1. Rufen Sie windows-filesystems-connector auf.
    2. Klicken Sie auf Clone or download (Klonen oder herunterladen) > Download zip (ZIP-Datei herunterladen).
    3. Entpacken Sie das Paket und wechseln Sie in das Verzeichnis.
  2. Erstellen Sie den Connector mit Apache Maven:

    > mvn package
    Verwenden Sie mvn package -DskipTests, um Tests zu überspringen.

  3. Extrahieren Sie die ZIP-Datei des Connectors in das Installationsverzeichnis:

    > cp target/google-cloudsearch-windows-filesystems-connector-v1-0.0.3.zip installation-dir
    > cd installation-dir
    > unzip google-cloudsearch-windows-filesystems-connector-v1-0.0.3.zip
    > cd google-cloudsearch-windows-filesystems-connector-v1-0.0.3

Schritt 2: Konfigurationsdatei erstellen

Nach der Installation des Connectors erstellen Sie eine Konfigurationsdatei mit den Einstellungen für den Connector.

  1. Erstellen Sie im Connector-Verzeichnis eine Datei mit dem Namen connector-config.properties.
  2. Fügen Sie Parameter als Schlüssel/Wert-Paare hinzu. Beispiel:

    # Required parameters
    api.serviceAccountPrivateKeyFile=/path/to/file.json
    api.sourceId=0123456789abcde
    api.identitySourceId=a1b1c1234567
    
    # File system access
    fs.src=\\\\host\\share;\\\\dfshost\\dfsnamespace
    
    # Optional parameters
    traverse.abortAfterExceptions=500
    fs.monitorForUpdates = true
    fs.preserveLastAccessTime = IF_ALLOWED
    

    Informationen zu dateisystemspezifischen Parametern finden Sie in der Referenz zu Konfigurationsparametern. Eine Liste der allgemeinen Parameter, die von allen Cloud Search-Connectors verwendet werden, finden Sie unter Von Google bereitgestellte Connectorparameter.

Schritt 3: Logging aktivieren

Erstellen Sie ein Verzeichnis für Protokolle und eine Protokollkonfigurationsdatei.

  1. Erstellen Sie im Connector-Verzeichnis einen Ordner mit dem Namen logs.
  2. Erstellen Sie eine Datei mit dem Namen logging.properties und folgendem Inhalt:

    handlers = java.util.logging.ConsoleHandler,java.util.logging.FileHandler
    # Default log level
    .level = WARNING
    com.google.enterprise.cloudsearch.level = INFO
    com.google.enterprise.cloudsearch.fs.level = INFO
    
    # 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-fs.%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: Optional: Medientypen konfigurieren

Der Connector versucht, die Medientypen von Dateien mit dem Standardmechanismus zu erkennen, der unter Windows auf Registrierungseinträgen basiert. Wenn ein Registrierungseintrag für eine Dateiendung fehlt, kann der Connector den Medientyp möglicherweise nicht richtig erkennen. Wenn Medientypen nicht richtig erkannt werden oder Sie den Standardtyp für eine Erweiterung überschreiben möchten, gehen Sie so vor:

  1. Erstellen Sie im Connector-Verzeichnis eine Datei mit dem Namen mime-type.properties.
  2. Geben Sie Erweiterungen und Typen als extension=media/type ein: properties xlsx=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet one=application/msonenote txt=text/plain pdf=application/pdf

Schritt 5: File Systems-Connector ausführen

Starten Sie den Connector auf dem Hostcomputer:

> java -jar google-cloudsearch-windows-filesystems-connector-v1-0.0.3.jar -Djava.util.logging.config.file=logging.properties[ -Dconfig=my.config]

Standardmäßig sucht der Connector im Verzeichnis, in dem er ausgeführt wird, nach einer Konfigurationsdatei mit dem Namen connector-config.properties. Wenn Ihre Konfigurationsdatei einen anderen Namen hat oder sich in einem anderen Verzeichnis befindet, geben Sie den Pfad mit dem Parameter -Dconfig an.

Referenz zu Konfigurationsparametern

In den folgenden Tabellen werden die Parameter aufgeführt und beschrieben, die zum Konfigurieren des File Systems-Connectors verwendet werden.

Zugriff auf Datenquellen

Einstellung Parameter
ID der Datenquelle api.sourceId=1234567890abcdef

Erforderlich. Die ID der Cloud Search-Quelle.

Dienstkonto api.serviceAccountPrivateKeyFile=./PrivateKey.json

Erforderlich. Der Pfad zur Dienstkonto-Schlüsseldatei.

ID der Identitätsquelle api.identitySourceId=x0987654321

Erforderlich. Die ID der Identitätsquelle, die vom Google Workspace-Administrator eingerichtet wurde, um Active Directory-Identitäten mithilfe von GCDS zu synchronisieren.

Dateisystemzugriff

Mit diesen Parametern können Sie die zu crawlenden Dateisystemquellen angeben.

Einstellung Parameter
Quelldateisysteme fs.src=path1[,path2, ...]

Erforderlich. Geben Sie Quelldateisysteme als eine oder mehrere UNC-Quellen an, die durch das mit fs.src.separator konfigurierte Trennzeichen getrennt sind. Wenn Sie Zeichen verwenden, die nicht in Latin1 enthalten sind, codieren Sie sie mit Java-Unicode-Escape-Zeichen.

Pfadtrennzeichen

Einstellung Parameter
Pfadtrennzeichen fs.src.separator=separator-character

Das Standardtrennzeichen ist „;“. Wenn Ihre Quellpfade Semikolons enthalten, können Sie ein anderes Trennzeichen verwenden, z. B. ein Komma (,), das nicht mit den Zeichen in Ihren Pfaden in Konflikt steht und nicht durch die Syntax der Property-Dateien selbst reserviert ist.

Ist der Wert von fs.src.separator ein leerer String, wird der Wert von fs.src als einzelner Pfad behandelt.

Connector-Verhalten

Mit diesen Parametern können Sie anpassen, wie der Connector Dateisysteme crawlt.

Einstellung Parameter
Windows-Domain fs.supportedDomain=domain

Erforderlich, damit Nutzer, die mit GCDS eingerichtet sind, über Cloud Search auf Dokumente zugreifen können. Geben Sie diesen als einzelnen NetBIOS-Domainnamen des Active Directory an.

Konten in ACLs aufnehmen fs.supportedAccounts=account-1[, account-2,...]

Eine durch Kommas getrennte Liste der Konten, die in ACLs aufgenommen werden sollen, unabhängig davon, ob es sich um integrierte Konten handelt.

Der Standardwert ist BUILTIN\\Administrators,Everyone,BUILTIN\\Users, BUILTIN\\Guest,NT AUTHORITY\\INTERACTIVE, NT AUTHORITY\\Authenticated Users.

Integrierte Konten von ACLs ausschließen fs.builtinGroupPrefix=prefix

Geben Sie das Präfix der integrierten Konten an. Alle Konten, die mit diesem Präfix beginnen, werden als integrierte Konten betrachtet und von den ACLs ausgeschlossen.

Der Standardwert ist BUILTIN\\.

Indexierung versteckter Dateien und Ordner zulassen fs.crawlHiddenFiles=boolean

Legen Sie true fest, um versteckte Dateien zu crawlen. Der Standardwert ist false.

Indexierung von gecrawlten Ordnerlisten und Aufzählungen von DFS-Namespaces zulassen fs.indexFolders=boolean

Wenn true (Standardeinstellung) festgelegt ist und der Connector einen Ordner crawlt, wird ein CONTAINER_ITEM-Objekt erstellt. Ist „false“ festgelegt, wird mit dem Connector stattdessen ein VIRTUAL_CONTAINER_ITEM-Objekt erstellt.

Änderungsmonitoring für Dateisysteme aktivieren fs.monitorForUpdates=boolean

Wenn true festgelegt ist (Standardeinstellung), wird bei Änderungen der Inhalts- oder Zugriffssteuerung der Connector angewiesen, das Dateisystem noch einmal zu crawlen. Wenn Sie diesen Wert auf false festlegen, wird die Ressourcennutzung reduziert, aber es dauert länger, bis Änderungen in den Suchergebnissen berücksichtigt werden.

Maximale Größe des Verzeichniscaches festlegen fs.directoryCacheSize=number-of-entries

Die maximale Größe des Verzeichniscaches. Der Connector nutzt den Cache, um versteckte Ordner zu ermitteln und so zu verhindern, dass Dateien und Ordner in versteckten Ordnern indexiert werden.

Der Standardwert ist 50.000 Einträge, die normalerweise 10–15 MB RAM beanspruchen.

Zeitstempelaufbewahrung

Mit diesen Parametern können Sie angeben, wie der Connector Zeitstempel beibehält.

Einstellung Parameter
Zugriffszeit beibehalten fs.preserveLastAccessTime=value

Wenn der Connector Dateien und Ordner crawlt, kann er den Zeitstempel des letzten Zugriffs für diese Dateien und Ordner auf den Zeitpunkt des Crawlings festlegen. Wenn die Zeitpunkte des letzten Zugriffs nicht beibehalten werden, verschieben Sicherungs- und Archivierungssysteme die entsprechenden Dateien und Ordner möglicherweise nicht in den sekundären Speicher, weil der Connector auf sie zugegriffen hat.

Standardmäßig ist fs.preserveLastAccessTime auf ALWAYS festgelegt. Der Connector versucht also, den Zeitpunkt des letzten Zugriffs beizubehalten. Wenn dem Nutzerkonto, unter dem der Connector ausgeführt wird, Berechtigungen zum Schreiben von Dateiattributen fehlen, kann der Connector den Zeitpunkt des letzten Zugriffs nicht wiederherstellen. Wenn ALWAYS festgelegt ist und der Connector den Zeitpunkt des letzten Zugriffs nicht beibehalten kann, lehnt er Crawling-Anfragen für das Dateisystem ab, damit die Zeitstempel der Dateien nicht geändert werden.

Zulässige Werte:

  • ALWAYS: Der Connector versucht, beim Crawlen von Dateien und Ordnern den Zeitpunkt des letzten Zugriffs beizubehalten. Wenn der Connector den Zeitpunkt des letzten Zugriffs nicht beibehalten kann, lehnt er alle nachfolgenden Crawling-Anfragen für das Dateisystem ab. So wird verhindert, dass weitere Zeitstempel geändert werden.
  • IF_ALLOWED: Der Connector versucht, beim Crawlen von Dateien und Ordnern den Zeitpunkt des letzten Zugriffs beizubehalten. Das Crawling wird auch dann fortgesetzt, wenn einige Zeitstempel nicht beibehalten wurden.
  • NEVER: Der Connector versucht nicht, den Zeitpunkt des letzten Zugriffs beizubehalten.
Nur Dateien crawlen, auf die nach einem bestimmten Datum zugegriffen wurde fs.lastAccessedDate=YYYY-MM-DD

Inhalte werden nur gecrawlt, wenn der Zeitpunkt des letzten Zugriffs nach dem angegebenen Datum liegt (JJJJ-MM-TT, ISO8601-Format). Der Standardwert ist disabled. Beispiel: 2010-01-01 crawlt Inhalte, auf die nach Anfang 2010 zugegriffen wurde. Kann nicht mit fs.lastAccessedDays verwendet werden.

Nur Dateien crawlen, auf die während der angegebenen Anzahl vergangener Tage zugegriffen wurde fs.lastAccessedDays=number-of-days

Inhalte werden nur gecrawlt, wenn der Zeitpunkt des letzten Zugriffs innerhalb der angegebenen Anzahl von Tagen vor dem aktuellen Zeitpunkt liegt. Der Standardwert ist disabled. Nützlich zum Entfernen alter Inhalte, z.B.: 365 werden nur Inhalte gecrawlt, auf die im letzten Jahr zugegriffen wurde. Kann nicht mit fs.lastAccessedDate verwendet werden.

Nur Dateien crawlen, die nach einem bestimmten Datum geändert wurden fs.lastModifiedDate=YYYY-MM-DD

Inhalte werden nur gecrawlt, wenn der Zeitpunkt der letzten Änderung nach dem angegebenen Datum liegt (JJJJ-MM-TT, ISO8601-Format). Der Standardwert ist disabled. Beispiel: 2010-01-01 crawlt Inhalte, die nach Anfang 2010 geändert wurden. Kann nicht mit fs.lastModifiedDays verwendet werden.

Nur Dateien crawlen, die während der angegebenen Anzahl vergangener Tage geändert wurden fs.lastModifiedDays=number-of-days

Inhalte werden nur gecrawlt, wenn der Zeitpunkt der letzten Änderung innerhalb der angegebenen Anzahl von Tagen vor dem aktuellen Zeitpunkt liegt. Der Standardwert ist disabled. Nützlich zum Entfernen alter Inhalte, z.B. 365 crawlt Inhalte, die im letzten Jahr geändert wurden. Kann nicht mit fs.lastModifiedDate verwendet werden.

ACLs für Dateifreigaben überspringen

Sie können den Connector so konfigurieren, dass er Freigabe-ACLs ignoriert, wenn er nicht die Berechtigungen zum Lesen dieser ACLs hat. Inhalte werden dann mit einer permissiven Freigabe-ACL zurückgegeben.

Einstellung Parameter
ACLs für Freigabe überspringen fs.skipShareAccessControl=boolean

Legen Sie true fest, um Freigabe-ACLs zu ignorieren. Der Standardwert ist false.