Implementa el conector de sistemas de archivos de Microsoft Windows

Puedes configurar Google Cloud Search para que muestre resultados de los recursos compartidos de Microsoft Windows de tu organización, además del contenido de Google Workspace. Usas el conector de sistemas de archivos de Cloud Search y lo configuras para acceder a los recursos compartidos de Windows especificados. Una sola instancia de conector puede admitir varios recursos compartidos de Microsoft Windows.

Consideraciones importantes

Antes de implementar el conector de File Systems, revisa las siguientes consideraciones.

Actualizaciones automáticas continuas

De forma predeterminada, el conector supervisa continuamente las rutas de acceso de inicio (valores de fs.src en el archivo de configuración) cuando se inicia. Cuando el sistema de archivos informa cambios en el contenido o los controles de acceso, el conector vuelve a rastrear el sistema de archivos. Este nuevo rastreo puede consumir muchos recursos. Para desactivar la supervisión, establece fs.monitorForUpdates en false. Esto reduce el uso de recursos, pero retrasa el momento en que el conector refleja los cambios. Más información

Control de acceso de DFS

El sistema DFS aplica control de acceso en sus vínculos y, por lo general, cada vínculo DFS tiene su propia LCA. El DFS usa la enumeración basada en el acceso (ABE) para restringir los vínculos que se muestran a un usuario. Es posible que los usuarios solo vean un subconjunto de vínculos de DFS o solo un vínculo cuando la ABE aísla los directorios de página principal. Cuando recorre un sistema DFS, el conector respeta la LCA del vínculo de DFS y la LCA de los recursos compartidos de destino. La LCA de los recursos compartidos se hereda de la LCA de DFS.

Limitaciones conocidas

En esta sección, se enumeran las limitaciones conocidas del conector del sistema de archivos.

  • Sistema de archivos: El conector no admite unidades asignadas ni locales.
  • Sistema de archivos distribuidos: Una unidad asignada a un DFS con una UNC no funciona correctamente, y es posible que algunas LCA no se lean de manera adecuada.
  • El conector admite los vínculos y los espacios de nombres DFS, pero no las carpetas normales en el espacio de nombres DFS.
  • Los vínculos a archivos en cloudsearch.google.com o que devuelve la API de Query no se pueden hacer clic en la mayoría de los navegadores.

Requisitos del sistema

Antes de implementar el conector de File Systems, asegúrate de que la máquina host cumpla con los siguientes requisitos:

Requisitos del sistema
Sistema operativo
  • Windows Server 2016
  • Windows Server 2012
  • Windows Server 2008 R2
Software
  • Java JRE 1.8 instalado en la computadora que ejecuta el conector
Protocolos de sistemas de archivos
  • Bloque de mensajes del servidor (SMB) - SMB1
  • Bloque de mensajes del servidor (SMB) - SMB2
  • Sistema de archivos distribuido (DFS)

No se admiten: Sistemas de archivos locales de Windows, NFS 2.0, NFS 3.0 ni sistemas de archivos locales de Linux.

Implementa el conector

Sigue estos pasos para implementar el conector de sistemas de archivos.

Requisitos previos

Antes de implementar el conector, asegúrate de que tu entorno tenga estos componentes:

  • Información de Google Workspace para establecer conexiones:

    Por lo general, tu administrador de Google Workspace puede proporcionarte estas credenciales.

  • Asegúrate de que la cuenta de Windows tenga los permisos necesarios.

Permisos obligatorios de la cuenta de Microsoft Windows

La cuenta de Windows que ejecuta el conector debe tener permisos para realizar las siguientes acciones:

  • Mostrar el contenido de una carpeta
  • Leer el contenido del documento
  • Leer los atributos de archivos y carpetas
  • Permisos de lectura (ACL) para archivos y carpetas
  • Escribir atributos básicos

La membresía a uno de estos grupos suele otorgar permisos suficientes: Administradores, Usuarios avanzados, Operadores de impresión o Operadores de servidor.

Paso 1: Instala el conector

Descarga o clona el repositorio del conector desde GitHub y, luego, compila el paquete del conector.

  1. Obtén el repositorio del conector de GitHub y compílalo.

    Para usar Git en el servidor de Windows, haz lo siguiente:

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

    Para descargar directamente, sigue estos pasos:

    1. Ve a windows-filesystems-connector.
    2. Haz clic en Clonar o descargar > Descargar ZIP.
    3. Descomprime el paquete y ve al directorio.
  2. Compila el conector con Apache Maven:

    > mvn package
    Para omitir pruebas, usa mvn package -DskipTests.

  3. Extrae el archivo ZIP del conector en el directorio de instalación:

    > 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

Paso 2: Cree el archivo de configuración

Después de instalar el conector, crea un archivo de configuración que contenga los parámetros de configuración del conector.

  1. En el directorio del conector, crea un archivo llamado connector-config.properties.
  2. Agrega parámetros como pares clave-valor. Por ejemplo:

    # 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
    

    Consulta la referencia de los parámetros de configuración para ver los parámetros específicos del sistema de archivos. Para obtener una lista de los parámetros comunes que usan todos los conectores de Cloud Search, consulta Parámetros de conectores que proporciona Google.

Paso 3: Habilitar registro

Crea un directorio para los registros y un archivo de configuración de registro.

  1. Crea una carpeta llamada logs en el directorio del conector.
  2. Crea un archivo llamado logging.properties con este contenido:

    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
    

Paso 4: Configura tipos de medios (opcional)

El conector intenta detectar los tipos de medios de los archivos con su mecanismo predeterminado que, en Windows, se basa en las entradas del registro. Si falta una entrada de registro para una extensión de archivo, es posible que el conector no detecte el tipo de medio correctamente. Si los tipos de medios no se detectan correctamente o si deseas anular el tipo predeterminado para una extensión, sigue estos pasos:

  1. Crea un archivo llamado mime-type.properties en el directorio del conector.
  2. Ingresa las extensiones y los tipos como extension=media/type: properties xlsx=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet one=application/msonenote txt=text/plain pdf=application/pdf

Paso 5: Ejecuta el conector de sistemas de archivos

Inicia el conector desde la máquina host:

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

De forma predeterminada, el conector busca un archivo de configuración llamado connector-config.properties en el directorio en el que se ejecuta el conector. Si tu archivo de configuración tiene un nombre diferente o se encuentra en otro directorio, usa el parámetro -Dconfig para especificar su ruta de acceso.

Referencia de los parámetros de configuración

En las siguientes tablas, se enumeran y describen los parámetros que se usan para configurar el conector de sistemas de archivos.

Acceso a la fuente de datos

Configuración Parámetro
ID de la fuente de datos api.sourceId=1234567890abcdef

Obligatorio. Es el ID de la fuente de Cloud Search.

Cuenta de servicio api.serviceAccountPrivateKeyFile=./PrivateKey.json

Obligatorio. Es la ruta de acceso al archivo de claves de la cuenta de servicio.

ID de la fuente de identidad api.identitySourceId=x0987654321

Obligatorio. El ID de la fuente de identidad de Cloud Search que configura el administrador de Google Workspace para sincronizar las identidades de directorios activos con GCDS

Acceso al sistema de archivos

Usa estos parámetros para especificar las fuentes del sistema de archivos que se deben rastrear.

Configuración Parámetro
Sistemas de archivos fuente fs.src=path1[,path2, ...]

Obligatorio. Especifica los sistemas de archivos de origen como una o más fuentes UNC separadas por el delimitador configurado por fs.src.separator. Si usas caracteres que no están en Latin1, codifícalos con escapes de Java Unicode.

Carácter separador de ruta de acceso

Configuración Parámetro
Carácter separador de ruta de acceso fs.src.separator=separator-character

El separador predeterminado es ";". Si tus rutas de acceso fuente contienen punto y coma, puedes establecer un delimitador diferente, como una coma (","), que no genere conflictos con los caracteres de la ruta de acceso y que no esté reservado por la propia sintaxis del archivo de propiedad.

Si el valor de fs.src.separator es una cadena vacía, el valor de fs.src se trata como una sola ruta.

Comportamiento del conector

Usa estos parámetros para ajustar la forma en que el conector rastrea los sistemas de archivos.

Configuración Parámetro
Dominio de Windows fs.supportedDomain=domain

Obligatorio para permitir que los usuarios que están configurados con GCDS accedan a los documentos a través de Cloud Search. Especifica un solo nombre de dominio NetBIOS de Active Directory.

Incluye cuentas en las LCA fs.supportedAccounts=account-1[, account-2,...]

Es una lista de cuentas delimitada por comas que se incluirán en las LCA, independientemente de si son cuentas integradas.

El valor predeterminado es BUILTIN\\Administrators,Everyone,BUILTIN\\Users, BUILTIN\\Guest,NT AUTHORITY\\INTERACTIVE, NT AUTHORITY\\Authenticated Users.

Excluye cuentas integradas de las LCA fs.builtinGroupPrefix=prefix

Especifica el prefijo de las cuentas integradas. Una cuenta que comienza con este prefijo se considera una cuenta integrada y se excluirá de las LCA.

El valor predeterminado es BUILTIN\\.

Permite la indexación de archivos y carpetas ocultos fs.crawlHiddenFiles=boolean

Configúralo como true para rastrear archivos ocultos. El valor predeterminado es false.

Permite la indexación de las listas de carpetas rastreadas y las enumeraciones de los espacios de nombres DFS fs.indexFolders=boolean

Cuando se configura como true (valor predeterminado), cuando el conector rastrea una carpeta, crea un objeto CONTAINER_ITEM. Si se configura como falso, el conector crea un objeto VIRTUAL_CONTAINER_ITEM.

Habilita la supervisión del cambio del sistema de archivos fs.monitorForUpdates=boolean

Cuando se establece en true (valor predeterminado), el conector vuelve a rastrear automáticamente cuando se producen cambios en el contenido o en los controles de acceso. Si se configura en false, se reduce el uso de recursos, pero se retrasa la rapidez con la que los cambios se reflejan en los resultados de la búsqueda.

Establece el tamaño máximo de la caché de los directorios. fs.directoryCacheSize=number-of-entries

Es el tamaño máximo de la caché de directorios. El conector usa la caché para identificar las carpetas ocultas y evitar indexar archivos y carpetas en ellas.

El valor predeterminado es 50,000 entradas, que suelen consumir entre 10 y 15 megabytes de RAM.

Conservación de marcas de tiempo

Usa estos parámetros para especificar cómo el conector controla la conservación de la marca de tiempo.

Configuración Parámetro
Conservar la hora de acceso fs.preserveLastAccessTime=value

Cuando rastrea archivos y carpetas, el conector puede cambiar la marca de tiempo del último acceso a la hora del rastreo. Si no se conservan los horarios del último acceso, es posible que los sistemas de archivos y copias de seguridad no muevan los archivos y las carpetas adecuados al almacenamiento secundario porque el conector accedió a ellos.

De forma predeterminada, fs.preserveLastAccessTime se establece en ALWAYS, lo que significa que el conector intenta conservar el horario del último acceso. Si la cuenta de usuario que ejecuta el conector no tiene privilegios para escribir atributos de archivo, el conector no puede restablecer el horario del último acceso. Si se configura como ALWAYS y el conector no puede conservar el horario del último acceso, rechaza las solicitudes de rastreo para el sistema de archivos, de modo que no se modifiquen las marcas de tiempo de los archivos.

Estos son algunos de los valores posibles:

  • ALWAYS: El conector intenta conservar el horario del último acceso a medida que rastrea archivos y carpetas. Si no puede conservar el horario del último acceso, rechaza todas las solicitudes de rastreo posteriores para el sistema de archivos con el fin de evitar alterar las marcas de tiempo.
  • IF_ALLOWED: El conector intenta conservar el horario del último acceso a medida que rastrea archivos y carpetas. Continúa rastreando incluso cuando es posible que no se conserven algunas marcas de tiempo.
  • NEVER: El conector no intenta conservar el horario del último acceso.
Rastrea solo los archivos a los que se accedió después de una fecha determinada fs.lastAccessedDate=YYYY-MM-DD

Rastrea el contenido solo si la última hora de acceso es posterior a la fecha especificada (AAAA-MM-DD, formato ISO8601). El valor predeterminado es disabled. Por ejemplo, 2010-01-01 rastrea el contenido al que se accedió después de principios de 2010. No se puede usar con fs.lastAccessedDays.

Rastrea solo los archivos a los que se accedió en los últimos días. fs.lastAccessedDays=number-of-days

Rastrea el contenido solo si la última hora de acceso se encuentra dentro de la cantidad especificada de días a partir del presente. El valor predeterminado es disabled. Útil para hacer que venza el contenido antiguo, p.ej., 365 rastrea el contenido al que se accedió en el último año. No se puede usar con fs.lastAccessedDate.

Solo se rastrean los archivos que se modificaron después de una fecha determinada. fs.lastModifiedDate=YYYY-MM-DD

Rastrea el contenido solo si la hora de la última modificación es posterior a la fecha especificada (AAAA-MM-DD, formato ISO8601). El valor predeterminado es disabled. Por ejemplo, 2010-01-01 rastrea el contenido modificado después del inicio del año 2010. No se puede usar con fs.lastModifiedDays.

Rastrea solo los archivos que se modificaron en los últimos días. fs.lastModifiedDays=number-of-days

Rastrea el contenido solo si la hora de la última modificación se encuentra dentro de la cantidad de días especificada a partir del presente. El valor predeterminado es disabled. Es útil para hacer lo siguiente: Vencer contenido antiguo, p.ej., 365 rastrea el contenido que se modificó en el último año. No se puede usar con fs.lastModifiedDate.

Omite las LCA de los archivos compartidos

Puedes configurar el conector para que ignore las LCA de los archivos compartidos si no tiene permisos para leerlas. Luego, se muestra el contenido con una LCA de uso compartido permisiva.

Configuración Parámetro
Omitir las LCA de uso compartido fs.skipShareAccessControl=boolean

Configúralo como true para ignorar las LCA de uso compartido. El valor predeterminado es false.