Puedes configurar Google Cloud Search para que muestre resultados del contenido de SharePoint Online de tu organización, además del contenido de Google Workspace. Usa el conector de SharePoint Online de Cloud Search y configúralo para acceder a una fuente de datos específica de SharePoint Online.
Consideraciones importantes
Antes de implementar el conector de SharePoint Online, ten en cuenta las siguientes consideraciones.
Configuración de SharePoint respetada
El conector siempre respeta el parámetro de configuración Visibilidad de búsqueda en SharePoint. En el caso de los documentos en borrador, los permisos de la cuenta de usuario que el conector usa para acceder a SharePoint Online controlan qué documentos en borrador indexa y devuelve. Si la cuenta solo tiene permisos de "Lectura completa", el conector respeta la configuración de "Visibilidad del elemento en borrador".
También puedes configurar el conector para limitar los resultados según el acceso a la cuenta de usuario. Para aplicar el recorte de seguridad, sincroniza estas identidades externas con el directorio de Google Cloud:
- Usuarios de Office 365 o Azure AD
- Grupos de seguridad de Office 365 o Azure AD
- Grupos de SharePoint (con usuarios y grupos de Office 365 como miembros)
Optimización de la búsqueda
Mejora la experiencia de búsqueda configurando el conector para que devuelva resultados relevantes. Usa los parámetros de generación de HTML en el archivo de configuración para establecer los niveles de impacto de los campos.
Para configurar un esquema, consulta Crea y registra un esquema. Cuando configures un esquema, ten en cuenta lo siguiente:
- El conector normaliza los tipos de contenido de SharePoint en nombres de definiciones de objetos válidos (A-Z, a-z, 0-9). Por ejemplo, "Artículo de noticias" se convierte en "ArtículoDeNoticias".
- Si el conector no puede encontrar una definición de objeto coincidente, usa el tipo de objeto de resguardo (
itemMetadata.objectType). Consulta Parámetros de configuración de metadatos. - El conector asigna nombres de propiedades de SharePoint a las definiciones de propiedades.
- El conector anula el tipo de medio para los archivos
.msgde Microsoft Outlook y los indexa comoapplication/vnd.ms-outlook.
Limitaciones conocidas del conector
- Cada instancia del conector indexa contenido de una sola colección de sitios. Para indexar varias colecciones de sitios, configura instancias adicionales.
- El consumo de memoria aumenta con la cantidad de usuarios y grupos únicos en las LCA.
- Las notificaciones de eliminación pueden tardar más de 4 horas en propagarse.
Requisitos del sistema
| Requisitos del sistema | |
|---|---|
| Sistema operativo | Windows Server 2016, Ubuntu, Red Hat Enterprise Linux 5.0 o SUSE Enterprise Linux 10 (64 bits). |
| Autenticación | Autenticación en vivo |
| Software | Entorno de SharePoint Online y Java JRE 1.8. |
Implementa el conector
Sigue estos pasos para implementar el conector de SharePoint Online.
Requisitos previos
- Crea una clave privada de Google Workspace. Consulta Configura el acceso a la API de Cloud Search.
- Agrega una fuente de datos para buscar y registrar su ID. Consulta Agrega una fuente de datos a la búsqueda.
- En el caso de los resultados basados en la LCA, tu administrador debe crear dos fuentes de identidad (una para Office 365 y otra para los grupos de SharePoint) y proporcionar el ID de cliente de Google Workspace. Consulta Cómo asignar identidades de usuarios.
- Configura una cuenta de usuario para el conector con privilegios de administrador de la colección de sitios de SharePoint Online.
- Crea credenciales de aplicación de Azure Active Directory con permisos de
Group.Read.AllyUser.Read.All. Toma nota del ID de aplicación, el usuario y el secreto del cliente.
Paso 1: Instala el software del conector
- Clona el repositorio:
$ git clone https://github.com/google-cloudsearch/sharepoint-connector.git $ cd sharepoint-connector
- Revisa la versión seleccionada (p.ej.,
v1-0.0.3):$ git checkout tags/v1-0.0.3
- Compila el conector:
Para omitir pruebas, usa$ mvn package
mvn package -DskipTests. - Extrae el archivo ZIP en el directorio de instalación.
Paso 2: Cree el archivo de configuración
Crea sharepoint-online-connector.config en el directorio de instalación. Agrega parámetros como pares clave-valor, como se muestra en el siguiente ejemplo:
api.sourceId=08ef8becd116faa4546b8ca2c84b2879
api.serviceAccountPrivateKeyFile=service_account.json
sharepoint.server=https://mydomain.onmicrosoft.com
sharepoint.siteCollectionOnly=true
sharepoint.username=admin@mydomain.onmicrosoft.com
sharepoint.password=password
sharepoint.formsAuthenticationMode=LIVE
sharepoint.deploymentType=ONLINE
api.identitySourceId=08ef8becd116faa475de26d9b291fed9
api.referenceIdentitySources=defaultIdentitySource
api.referenceIdentitySource.defaultIdentitySource.id=08ef8becd116faa5d3783f8c5a80e5aa
Consulta la referencia o los parámetros proporcionados por Google para obtener más detalles.
Paso 3: Configura el registro
Crea una carpeta logs y un archivo logging.properties con este contenido:
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
Paso 4: Configura el conector de identidad de SharePoint
Para aplicar LCA basadas en la identidad, crea sharepoint-online-identity-connector.config con tu api.customerId y otros parámetros de conexión, como en el siguiente ejemplo:
```properties
### 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
```
Paso 5: Instala el conector de identidad de Office 365
Si usas ACL basadas en la identidad de SharePoint Online, realiza este paso. Si usas ACL públicas, omite este paso.
Clona el repositorio de Office 365:
$ git clone https://github.com/google-cloudsearch/office-365-connector.git $ cd office-365-connectorExtrae y compila el conector con
mvn package.Extrae el archivo ZIP en el directorio de instalación.
Paso 6: Configura el conector de identidad de Office 365
En el mismo directorio que la instalación del conector de identidad, crea un archivo llamado
o365-identity-connector.configy agrega parámetros como pares clave-valor:### Office 365 Identity connector configuration ### api.identitySourceId=<var>12345abcde</var> api.customerId=<var>abcde12345</var> o365.clientId=<var>a63c6eb3-29e7-486</var> o365.tenant=<var>185ef9ed-29e7-486</var> o365.clientSecret=<var>raHJN15vRLBKs</var>Para obtener descripciones de los parámetros, consulta Conector de identidad de Office 365.
En el mismo directorio, crea una carpeta llamada
logs.En el mismo directorio, crea un archivo llamado
logging.propertiescon este contenido: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
Paso 7: Cómo iniciar el conector
Después de configurar los conectores, ejecútalos para iniciar la sincronización y la indexación. Ejecuta cada comando en su propia ventana de terminal.
Ejecuta el conector de identidad de Office 365 para sincronizar usuarios y grupos:
$ java -Djava.util.logging.config.file=logging.properties -jar google-cloudsearch-office-365-connector-v1-0.0.3.jar -Dconfig=o365-identity-connector.configEjecuta el conector de identidad de SharePoint Online para sincronizar los grupos de colecciones de sitios:
$ java -Djava.util.logging.config.file=logging.properties -jar google-cloudsearch-sharepoint-connector-v1-0.0.3.jar -Dconfig=sharepoint-online-identity-connector.configEjecuta el conector de SharePoint Online para indexar contenido:
$ java -Djava.util.logging.config.file=logging.properties -jar google-cloudsearch-sharepoint-connector-v1-0.0.3.jar -Dconfig=sharepoint-online-connector.config
Referencia de los parámetros de configuración
En las siguientes secciones, se enumeran los parámetros de configuración que se usan para configurar el conector de SharePoint Online.
Acceso a la fuente de datos
| Configuración | Parámetro |
| ID de la fuente de datos | api.sourceId=1234567890abcdef
Obligatorio. ID de la fuente de datos de Google Cloud Search configurado por el administrador de Google Workspace |
| Ruta de acceso al archivo de claves privadas de la cuenta de servicio | api.serviceAccountPrivateKeyFile=PrivateKey.json
Obligatorio. Es la ruta de acceso al archivo de claves de la cuenta de servicio de Google Cloud Search. |
Acceso a SharePoint Online
| Configuración | Parámetro |
| Nombre de dominio completo para la colección de sitios de SharePoint | sharepoint.server=http://yoursharepoint.example.com/
Obligatorio. Si el nombre de dominio no está completo, configura la anulación de DNS en el host del conector. |
| Solamente en el modo de colección de sitios | sharepoint.siteCollectionOnly=true
Obligatorio. En el caso de SharePoint Online, establece el valor |
| Nombre de usuario de SharePoint | sharepoint.username=username
Obligatorio. Nombre de usuario de la cuenta que se usa para acceder a SharePoint Online. |
| Contraseña de SharePoint | sharepoint.password=user_password
Obligatorio. Contraseña de la cuenta que se usa para acceder a SharePoint Online. |
| Modo de autenticación | sharepoint.formsAuthenticationMode=LIVE
Obligatorio. En el caso de SharePoint Online, el valor siempre es "LIVE". |
| Tipo de implementación | sharepoint.deploymentType=ONLINE
Obligatorio. En el caso de SharePoint Online, el valor siempre es "ONLINE". |
Asignación de identidad de SharePoint
| Configuración | Parámetro |
| ID de la fuente de identidad | api.identitySourceId=1234567890abcdef
Obligatorio. Es el ID de la fuente de identidad de Cloud Search para la fuente de identidad de los grupos de SharePoint. |
| Fuentes de identidad de referencia | api.referenceIdentitySources=defaultIdentitySource
Obligatorio. Para SharePoint Online, el valor siempre es "defaultIdentitySource". |
| ID de las fuentes de identidad de referencia | api.referenceIdentitySource.defaultIdentitySource.id=112233abcd
Obligatorio. Es el ID de la fuente de identidad de Cloud Search para la fuente de identidad de usuarios y grupos de Office 365. |
Generación de contenido HTML
| Configuración | Parámetro |
| Campo de título de plantilla HTML | contentTemplate.sharePointItem.title=Title
El campo de SharePoint que se usará como título de la plantilla HTML para el HTML generado |
| Campos de alta calidad de búsqueda de contenido HTML | contentTemplate.sharePointItem.quality.high=highField1[,highField2,...]
Lista separada por comas de los campos que se incluirán en el HTML generado como campos de alta calidad. Cuando los términos de la búsqueda coinciden con estos campos, los resultados se clasifican en una posición superior. |
| Campos de calidad media de búsqueda de contenido HTML | contentTemplate.sharePointItem.quality.medium=mediumField1[,mediumField2,...]
Es una lista de campos separados por comas que se incluirán en el HTML generado como campos de calidad media. |
| Campos de baja calidad de búsqueda de contenido HTML | contentTemplate.sharePointItem.quality.low=lowField1[,lowField2,...]
Lista separada por comas de los campos que se incluirán en el HTML generado como campos de baja calidad. |
| Columnas sin asignar de contenido HTML | contentTemplate.sharepointItem.unmappedColumnsMode=APPEND
Cómo maneja el conector las columnas no asignadas. El valor es APPEND (predeterminado) o IGNORE.
|
Configuración del conector de identidad de Office 365
| Configuración | Parámetro |
| ID de la fuente de identidad | api.identitySourceId=1234567890abcdef
Obligatorio. Es el ID de la fuente de identidad de Office 365. Este valor debe coincidir con el valor de `api.referenceIdentitySource.defaultIdentitySource.id` en la configuración del conector de SharePoint Online. |
| ID de cliente de Google | api.customerId=c1b1d1e1
Obligatorio. Es el ID de cliente de Google Workspace de tu organización. |
| ID de la aplicación de Office 365 | o365.clientId=a63c6eb3-29e7-486
Obligatorio. ID de la aplicación de la configuración de la aplicación de Office 365. |
| Instancia de Office 365 | o365.tenant=185ef9ed-29e7-486
Obligatorio. El arrendatario de tu cuenta de Office 365 (tu app de Azure Active Directory) |
| Secreto del cliente de Office 365 | o365.clientSecret=raHJN15vRLBKs
Obligatorio. Credencial secreta de la configuración de la aplicación de Office 365 |