É possível configurar o Google Cloud Search para retornar resultados do conteúdo do SharePoint Online da sua organização, além do conteúdo do Google Workspace. Use o conector do SharePoint Online com o Cloud Search e configure-o para acessar uma origem de dados específica do SharePoint Online.
Considerações importantes
Antes de implantar o conector do SharePoint Online, confira as considerações a seguir.
Configurações do SharePoint respeitadas
O conector sempre respeita a configuração Visibilidade da pesquisa no SharePoint. Para documentos de rascunho, as permissões na conta de usuário que o conector usa para acessar o SharePoint Online controlam quais documentos de rascunho ele indexa e retorna. Se a conta tiver apenas permissões de "Leitura completa", o conector vai respeitar as configurações de "Visibilidade do item de rascunho".
Você também configura o conector para limitar os resultados com base no acesso à conta de usuário. Para aplicar o corte de segurança, sincronize essas identidades externas com o Google Cloud Directory:
- Usuários do Office 365 / Azure AD.
- Grupos de segurança do Office 365 / Azure AD.
- Grupos do SharePoint (com usuários e grupos do Office 365 como membros).
Otimização da pesquisa
Melhore a experiência de pesquisa configurando o conector para retornar resultados relevantes. Use parâmetros de geração de HTML no arquivo de configuração para definir níveis de impacto de campo.
Para configurar um esquema, consulte Criar e registrar um esquema. Ao configurar um esquema:
- O conector normaliza os tipos de conteúdo do SharePoint para nomes de definição de objeto válidos (A-Z, a-z, 0-9). Por exemplo, "Artigo de notícias" vira "NewsArticle".
- Se o conector não conseguir corresponder a uma definição de objeto, ele usará o tipo de objeto de fallback (
itemMetadata.objectType). Consulte Parâmetros de configuração de metadados. - O conector mapeia nomes de propriedades do SharePoint nas definições de propriedade.
- O conector substitui o tipo de mídia dos arquivos
.msgdo Microsoft Outlook e os indexa comoapplication/vnd.ms-outlook.
Limitações conhecidas do conector
- Cada instância do conector indexa conteúdo de apenas um conjunto de sites. Para indexar vários conjuntos de sites, configure outras instâncias.
- O consumo de memória aumenta com o número de usuários e grupos exclusivos em ACLs.
- As notificações de exclusão podem levar mais de quatro horas para serem propagadas.
Requisitos do sistema
| Requisitos do sistema | |
|---|---|
| Sistema operacional | Windows Server 2016, Ubuntu, Red Hat Enterprise Linux 5.0 ou SUSE Enterprise Linux 10 (64 bits). |
| Autenticação | Autenticação on-line. |
| Software | Ambiente do SharePoint Online; Java JRE 1.8. |
Implantar o conector
Siga estas etapas para implantar o conector do SharePoint Online.
Pré-requisitos
- Crie uma chave privada do Google Workspace. Consulte Configurar o acesso à API Cloud Search.
- Adicione uma origem de dados para pesquisar e registre o ID dela. Consulte Adicionar uma origem de dados para pesquisar.
- Para resultados baseados em ACLs, o administrador precisa criar duas origens de identidade (uma para o Office 365 e outra para grupos do SharePoint) e fornecer o ID do cliente do Google Workspace. Consulte Mapear identidades de usuários.
- Configure uma conta de usuário para o conector com privilégios de administrador do conjunto de sites do SharePoint Online.
- Crie credenciais de aplicativo do Azure Active Directory com permissões
Group.Read.AlleUser.Read.All. Anote o ID do aplicativo, o locatário e a chave secreta do cliente.
Etapa 1. Instalar o software do conector
- Clone o repositório:
$ git clone https://github.com/google-cloudsearch/sharepoint-connector.git $ cd sharepoint-connector
- Confira a versão selecionada (por exemplo,
v1-0.0.3):$ git checkout tags/v1-0.0.3
- Crie o conector:
Para pular testes, use$ mvn package
mvn package -DskipTests. - Extraia o arquivo ZIP para o diretório de instalação.
Etapa 2. Crie o arquivo de configuração
Crie sharepoint-online-connector.config no diretório de instalação. Adicione parâmetros como pares de chave-valor, conforme mostrado no exemplo a seguir:
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
Consulte a referência ou os parâmetros fornecidos pelo Google para mais detalhes.
Etapa 3. Configurar a geração de registros
Crie uma pasta logs e um arquivo logging.properties com este conteúdo:
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
Etapa 4. Configurar o conector de identidade do SharePoint
Para aplicar ACLs baseadas em identidade, crie sharepoint-online-identity-connector.config com seu api.customerId e outros parâmetros de conexão, como no exemplo a seguir:
```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
```
Etapa 5. Instalar o conector de identidade do Office 365
Se você estiver usando ACLs baseadas em identidade do SharePoint Online, siga esta etapa. Se você estiver usando ACLs públicas, pule esta etapa.
Clone o repositório do Office 365:
$ git clone https://github.com/google-cloudsearch/office-365-connector.git $ cd office-365-connectorConfira e crie o conector usando
mvn package.Extraia o arquivo ZIP para o diretório de instalação.
Etapa 6: Configurar o conector de identidade do Office 365
No mesmo diretório da instalação do conector de identidade, crie um arquivo chamado
o365-identity-connector.confige adicione parâmetros como pares de chave-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 descrições de parâmetros, consulte Conector de identidade do Office 365.
No mesmo diretório, crie uma pasta chamada
logs.No mesmo diretório, crie um arquivo chamado
logging.propertiescom este conteúdo: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
Etapa 7: Iniciar o conector
Depois de configurar os conectores, execute-os para iniciar a sincronização e a indexação. Execute cada comando na própria janela de terminal.
Execute o conector de identidade do Office 365 para sincronizar usuários e grupos:
$ java -Djava.util.logging.config.file=logging.properties -jar google-cloudsearch-office-365-connector-v1-0.0.3.jar -Dconfig=o365-identity-connector.configExecute o conector de identidade do SharePoint Online para sincronizar os grupos de conjuntos de sites:
$ java -Djava.util.logging.config.file=logging.properties -jar google-cloudsearch-sharepoint-connector-v1-0.0.3.jar -Dconfig=sharepoint-online-identity-connector.configExecute o conector do SharePoint Online para indexar o conteúdo:
$ java -Djava.util.logging.config.file=logging.properties -jar google-cloudsearch-sharepoint-connector-v1-0.0.3.jar -Dconfig=sharepoint-online-connector.config
Referência dos parâmetros de configuração
As seções a seguir listam os parâmetros de configuração usados para configurar o conector do SharePoint Online.
Acesso à fonte de dados
| Configuração | Parâmetro |
| ID da origem de dados | api.sourceId=1234567890abcdef
Obrigatório. O ID da fonte de dados do Google Cloud Search configurado pelo administrador do Google Workspace. |
| Caminho para o arquivo de chave privada da conta de serviço | api.serviceAccountPrivateKeyFile=PrivateKey.json
Obrigatório. O caminho para o arquivo de chave da conta de serviço do Google Cloud Search. |
Acesso ao SharePoint Online
| Configuração | Parâmetro |
| Nome de domínio totalmente qualificado para o conjunto de sites do SharePoint | sharepoint.server=http://yoursharepoint.example.com/
Obrigatório. Se o nome do domínio não for totalmente qualificado, defina a modificação do DNS no host do conector. |
| Modo "Somente conjunto de sites" | sharepoint.siteCollectionOnly=true
Obrigatório. Para o SharePoint Online, defina o valor |
| Nome de usuário do SharePoint | sharepoint.username=username
Obrigatório. O nome de usuário da conta usada para acessar o SharePoint Online. |
| Senha do SharePoint | sharepoint.password=user_password
Obrigatório. A senha da conta usada para acessar o SharePoint Online. |
| Modo de autenticação | sharepoint.formsAuthenticationMode=LIVE
Obrigatório. Para o SharePoint Online, o valor é sempre "LIVE". |
| Tipo de implantação | sharepoint.deploymentType=ONLINE
Obrigatório. Para o SharePoint Online, o valor é sempre "ONLINE". |
Mapeamento de identidade do SharePoint
| Configuração | Parâmetro |
| ID da origem de identidade | api.identitySourceId=1234567890abcdef
Obrigatório. O ID da origem de identidade do Cloud Search para a origem de identidade dos grupos do SharePoint. |
| Origens de identidade de referência | api.referenceIdentitySources=defaultIdentitySource
Obrigatório. Para o SharePoint Online, o valor é sempre "defaultIdentitySource". |
| IDs da origem de identidade de referência | api.referenceIdentitySource.defaultIdentitySource.id=112233abcd
Obrigatório. O ID da origem de identidade do Cloud Search para a origem de identidade de usuários e grupos do Office 365. |
Geração de conteúdo HTML
| Configuração | Parâmetro |
| Campo de título do modelo HTML | contentTemplate.sharePointItem.title=Title
O campo do SharePoint a ser usado como título do modelo HTML para o HTML gerado. |
| Campos de alta qualidade de pesquisa de conteúdo HTML | contentTemplate.sharePointItem.quality.high=highField1[,highField2,...]
Uma lista separada por vírgulas de campos a serem incluídos no HTML gerado como campos de alta qualidade. Quando os termos da consulta de pesquisa correspondem a esses campos, os resultados são classificados mais acima. |
| Campos de média qualidade de pesquisa de conteúdo HTML | contentTemplate.sharePointItem.quality.medium=mediumField1[,mediumField2,...]
Uma lista separada por vírgulas de campos a serem incluídos no HTML gerado como campos de qualidade média. |
| Campos de baixa qualidade de pesquisa de conteúdo HTML | contentTemplate.sharePointItem.quality.low=lowField1[,lowField2,...]
Uma lista separada por vírgulas de campos a serem incluídos no HTML gerado como campos de baixa qualidade. |
| Colunas não mapeadas de conteúdo HTML | contentTemplate.sharepointItem.unmappedColumnsMode=APPEND
Como o conector lida com colunas não mapeadas. O valor é APPEND (padrão) ou IGNORE.
|
Configuração do conector de identidade do Office 365
| Configuração | Parâmetro |
| ID da origem de identidade | api.identitySourceId=1234567890abcdef
Obrigatório. O ID da origem de identidade do Office 365. Esse valor precisa corresponder ao valor de "api.referenceIdentitySource.defaultIdentitySource.id" na configuração do conector do SharePoint Online. |
| ID de cliente do Google | api.customerId=c1b1d1e1
Obrigatório. O ID de cliente do Google Workspace da sua organização. |
| ID do aplicativo do Office 365 | o365.clientId=a63c6eb3-29e7-486
Obrigatório. O ID do aplicativo da configuração do aplicativo do Office 365. |
| Locatário do Office 365 | o365.tenant=185ef9ed-29e7-486
Obrigatório. O locatário da sua conta do Office 365 (seu app do Azure Activity Directory) |
| Chave secreta do cliente do Office 365 | o365.clientSecret=raHJN15vRLBKs
Obrigatório. Chave secreta de credencial da configuração do aplicativo do Office 365 |