Esegui il deployment del connettore Microsoft SharePoint on-prem

Puoi configurare Google Cloud Search in modo che restituisca i risultati dei contenuti di SharePoint on-premise della tua organizzazione, oltre a quelli di Google Workspace. Utilizzi il connettore Google Cloud Search SharePoint on-prem e lo configuri per accedere a un'origine dati SharePoint specifica.

Considerazioni importanti

Impostazioni di SharePoint rispettate

Il connettore Cloud Search SharePoint on-prem rispetta sempre l'impostazione Visibilità ricerca in SharePoint, che non può essere sostituita. Per i documenti di bozza, le autorizzazioni dell'account utente (utilizzate dal connettore per accedere a SharePoint Online) controllano quali documenti di bozza vengono indicizzati e restituiti. Se l'account dispone solo delle autorizzazioni "Lettura completa", il connettore rispetta le impostazioni "Visibilità elemento bozza" su SharePoint.

Puoi anche configurare il connettore in modo da limitare i risultati in base all'accesso all'account utente. Puoi utilizzare i principali di Google e quelli esterni per definire le ACL. Per applicare il taglio per la sicurezza ai contenuti di SharePoint, sincronizza le seguenti identità esterne con la Directory Google:

  • Utenti Active Directory
  • Gruppi Active Directory
  • Gruppi locali di SharePoint (con utenti e gruppi di Active Directory come membri)

Per sincronizzare gli utenti e i gruppi AD, utilizza Google Cloud Directory Sync, attivando i gruppi mappati alle identità. Per sincronizzare i gruppi locali di SharePoint, utilizza il connettore di identità di SharePoint.

Il connettore deve anche eseguire la ricerca con AD per recuperare ulteriori informazioni per sincronizzare le entità. Ad esempio, la ricerca con AD consente al connettore di eseguire le seguenti operazioni:

  • Mappa il SID di un gruppo di domini al nome sAMAccountName corrispondente.
  • Mappa un sAMAccountName utente all'indirizzo email per le iscrizioni ai gruppi locali di SharePoint.

Ottimizzazione per la rete di ricerca

Puoi migliorare l'esperienza degli utenti configurando il connettore in modo che restituisca risultati di ricerca più pertinenti.

Per utilizzare l'API, imposta i valori per i parametri di generazione HTML nel file di configurazione del connettore SharePoint Online. Questi parametri ti consentono di impostare i campi che hanno un impatto maggiore o minore sulle corrispondenze.

Per configurare uno schema, segui le istruzioni riportate in Creare e registrare uno schema. Quando configuri uno schema:

  • Per mappare i nomi dei tipi di contenuti di SharePoint alle definizioni di oggetti corrispondenti, il connettore normalizza i nomi dei tipi di contenuti escludendo i caratteri non supportati. Per le definizioni degli oggetti, l'API Cloud Search supporta solo i caratteri A-Z, a-z e 0-9 come validi. Ad esempio, il tipo di contenuti "Annunci" corrisponde alla definizione dell'oggetto "Annunci". Il tipo di contenuto "Articolo di notizie" viene mappato a "NewsArticle" (senza spazi).

  • Quando il connettore non riesce a trovare una corrispondenza tra una definizione di oggetto e un'altra, utilizza il tipo di oggetto di riserva (itemMetadata.objectType). Scopri di più sui parametri di configurazione dei metadati.

  • Per mappare i nomi delle proprietà di SharePoint alle relative definizioni, il connettore normalizza i nomi decodificando i caratteri codificati in esadecimale e rimuovendo i prefissi "ows_", quindi escludendo i caratteri non supportati (tutti i caratteri tranne A-Z, a-z e 0-9 come caratteri validi).

Gestione dei messaggi di Microsoft Outlook

Quando il connettore rileva file .msg di Microsoft Outlook durante l'indicizzazione dei contenuti, sostituisce il tipo di media per i file e li indicizza come application/vnd.ms-outlook.

Configurazioni multi-tenant

Se SharePoint è un deployment multi-tenant in cui più siti dei clienti sono ospitati nella stessa applicazione web, devi configurare la modalità raccolta siti nel file di configurazione. Nei deployment multi-tenant, ottieni le autorizzazioni solo per la tua raccolta siti e non puoi ottenere autorizzazioni di lettura completa, come richiesto dal connettore SharePoint on-prem.

Per attivare la modalità raccolta siti:

  • Concedi all'account utente del connettore le autorizzazioni di amministratore della raccolta siti.
  • Imposta sharepoint.server nel file di configurazione del connettore sull'URL della raccolta siti, ad esempio http://sharepoint.example.com/sites/sitecollection. L'URL non deve utilizzare esattamente le stesse maiuscole di SharePoint.
  • Imposta sharepoint.siteCollectionOnly nel file di configurazione del connettore su true.

Se hai più raccolte di siti da indicizzare in un ambiente multi-tenant, devi configurare un'istanza del connettore per ogni raccolta di siti.

Limitazioni note dei connettori

  • Il tempo necessario al connettore per rilevare le modifiche agli elementi nei database aumenta con il numero di database monitorati dal connettore.
  • Il consumo di memoria aumenta con il numero di utenti e gruppi univoci che utilizzi nelle ACL per ogni raccolta di siti.
  • Puoi configurare il connettore con le identità di un solo dominio Active Directory.
  • Alcuni principali di Active Directory e Windows comuni, come Everyone, BUILTIN\Users e All Authenticated Users, non sono supportati.
  • Le notifiche di eliminazione non sono istantanee e possono essere necessarie più di 4 ore prima che un connettore riconosca che un utente ha eliminato dei contenuti dal repository di origine.

Requisiti di sistema

Requisiti di sistema
Sistema operativo
  • Windows Server 2016
  • Ubuntu
  • Red Hat Enterprise Linux 5.0
  • SUSE Enterprise Linux 10 (64 bit)
Software
  • Server SharePoint
    • SharePoint Server 2016
    • SharePoint Server 2013
  • JRE 1.8 di Java installato sul computer su cui verrà eseguito il connettore Google Cloud Search SharePoint On-Prem
Autenticazione
  • NTLM
  • Kerberos
  • HTTP di base
  • ADFS

Esegui il deployment del connettore

Prerequisiti

  1. Crea una chiave privata Google Workspace contenente l'ID account di servizio. Per scoprire come ottenere una chiave privata, vai a Configurare l'accesso all'API Google Cloud Search.

  2. L'amministratore di Google Workspace deve aggiungere un'origine dati per la ricerca. Registra l'ID dell'origine dati.

  3. Se il connettore restituisce risultati in base alle ACL (i risultati non sono pubblici), l'amministratore di Google Workspace deve creare due origini identità e fornirti i relativi ID:

    • Un'origine identità per la sincronizzazione degli utenti e dei gruppi di Active Directory.
    • Un'origine identità per i gruppi locali di SharePoint

    L'amministratore deve anche recuperare l'ID cliente Google Workspace della tua organizzazione e fornirtelo.

    Scopri come ottenere questi valori in Mappare le identità degli utenti in Cloud Search.

  4. Configura un account utente per il connettore che abbia autorizzazioni di lettura completa per l'applicazione web SharePoint nel criterio utente.

  5. Se l'applicazione web SharePoint non ha una raccolta di siti principale, creane una.

  6. Se eventuali raccolte di siti sono bloccate per la scrittura, accedi al server SharePoint con un account con privilegi amministrativi ed esegui lo script PrepareWriteLockedSites.ps1.

  7. Per ottenere le metriche dell'origine dati da utilizzare per la configurazione del connettore, accedi al server SharePoint con un account che dispone dei privilegi di amministrazione del farm ed esegui diagnose_sp.ps1.

    L'output riporta il numero di applicazioni web, documenti e adesioni ai gruppi di utenti. Utilizza queste informazioni per stimare il numero di istanze del connettore necessarie, i requisiti di memoria e il numero di documenti.

Passaggio 1: Installa il software del connettore SharePoint on-prem di Google Cloud Search.

  1. Clona il repository del connettore da GitHub.

    $ git clone https://github.com/google-cloudsearch/sharepoint-connector.git
    $ cd sharepoint-connector
  2. Controlla la versione del connettore che ti interessa:

    $ git checkout tags/latest_version

    Dove: latest_version = un valore come v1-0.0.5

  3. Crea il connettore.

    $ mvn package

    Per saltare i test durante la creazione del connettore, esegui mvn package -DskipTests anziché mvn package.

  4. Copia il file ZIP del connettore nella directory di installazione locale:

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

Passaggio 2: Crea il file di configurazione del connettore SharePoint On-Prem

  1. Crea un file nella stessa directory dell'installazione del connettore. Google consiglia di assegnare al file il nome connector-config.properties in modo che non siano necessari parametri aggiuntivi della riga di comando per eseguire il connettore. Se prevedi di eseguire molte istanze del connettore, aggiungi dettagli al nome per distinguerlo.

  2. Aggiungi i parametri come coppie chiave/valore ai contenuti del file, come nell'esempio seguente:

    ### Sharepoint On-Prem Connector configuration ###
    
    # Required parameters for data source access
    api.sourceId=08ef8becd116faa4546b8ca2c84b2879
    api.serviceAccountPrivateKeyFile=service_account.json
    api.identitySourceId=08ef8becd116faa475de26d9b291fed9
    
    # Required parameters for SharePoint on-premises access
    sharepoint.server=http://sp-2016:32967/sites/doc-center-site-collection
    sharepoint.siteCollectionOnly=true
    sharepoint.username=contoso\\admin
    sharepoint.password=pa$sw0rd
    sharepoint.stripDomainInUserPrincipals=true
    
    # Required parameters for AD lookup
    adLookup.host=dc.contoso.com
    adLookup.username=contoso\\admin
    adLookup.password=pa$sw0rd
    api.referenceIdentitySources=CONTOSO,contoso
    api.referenceIdentitySource.contoso.id=08ef8becd116faa5d3783f8c5a80e5aa
    api.referenceIdentitySource.CONTOSO.id=08ef8becd116faa5d3783f8c5a80e5aa
    
    # Optional parameters for schema mapping
    contentTemplate.sharepointItem.title=Title
    contentTemplate.sharepointItem.unmappedColumnsMode=APPEND
    

    Per descrizioni dettagliate di ciascun parametro, consulta le informazioni di riferimento sui parametri di configurazione.

  3. (Facoltativo) Configura parametri aggiuntivi del connettore, se necessario. Per maggiori dettagli, vai a Parametri del connettore forniti da Google.

Passaggio 3: Per HTTPS, aggiungi SharePoint come host attendibile

Se SharePoint è configurato per l'utilizzo di HTTPS, ottieni un certificato SharePoint per aggiungerlo come host attendibile per il connettore.

  1. Sul computer su cui verrà eseguito il connettore, apri un browser e vai a SharePoint.

  2. Nella pagina di avviso che si apre, fai clic su Sono consapevole dei rischi e Aggiungi eccezione. La pagina mostra un messaggio come "Questa connessione non è attendibile" perché il certificato è autofirmato e non firmato da un'autorità di certificazione attendibile.

  3. Fai clic sul pulsante Visualizza quando è disponibile.

  4. Vai alla scheda Dettagli e fai clic su Esporta.

  5. Salva il certificato nella directory del connettore con il nome sharepoint.crt.

  6. Fai clic su Chiudi e poi su Annulla per chiudere le finestre.

  7. Apri un prompt dei comandi e inserisci il seguente comando:

    $ keytool -importcert -keystore cacerts.jks -storepass changeit -file sharepoint.crt -alias sharepoint

    Quando ti viene chiesto "Vuoi considerare attendibile questo certificato?", rispondi .

Passaggio 4: Configura il logging

  1. Nella directory contenente il file binario del connettore, crea una cartella denominata logs.

  2. Nella stessa directory (non logs), crea un file con codifica Latin1 denominato logging.properties.

  3. Aggiungi il seguente testo a logging.properties:

    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
    

Passaggio 5: Configurare il connettore di identità di SharePoint on-prem

Questo passaggio è necessario per applicare le ACL basate sulle identità di SharePoint on-premise ai risultati di ricerca. Se configuri il connettore con ACL pubblici, puoi saltare questo passaggio.

  1. Nella stessa directory dell'installazione del connettore SharePoint Online, crea un file e assegnagli il nome sharepoint-onprem-identity-connector.config.

  2. Aggiungi i parametri come coppie chiave/valore ai contenuti del file, come nell'esempio seguente:

    ### SharePoint On-prem identity connector configuration ###
    
    # Required parameters for data source access
    api.customerId=C05d3djk8
    api.serviceAccountPrivateKeyFile=service_account.json
    api.identitySourceId=08ef8becd116faa475de26d9b291fed9
    
    # Required parameters for SharePoint access
    sharepoint.server=http://sp-2016:32967/sites/doc-center-site-collection
    sharepoint.siteCollectionOnly=true
    sharepoint.username=contoso\\admin
    sharepoint.password=pa$sw0rd
    sharepoint.stripDomainInUserPrincipals=true
    
    # Required parameters for AD lookup
    adLookup.host=dc.contoso.com
    adLookup.username=contoso\\admin
    adLookup.password=pa$sw0rd
    api.referenceIdentitySources=CONTOSO,contoso
    api.referenceIdentitySource.contoso.id=08ef8becd116faa5d3783f8c5a80e5aa
    api.referenceIdentitySource.CONTOSO.id=08ef8becd116faa5d3783f8c5a80e5aa
    

    I valori sono quasi gli stessi del connettore SharePoint on-premise, tranne per il fatto che, anziché api.sourceId, il parametro è api.customerId. Il valore di api.customerId è l'ID cliente che hai ricevuto dall'amministratore di Google Workspace.

Passaggio 6: Avvia il connettore SharePoint on-prem

Nei passaggi seguenti, mapperai i principali sia in Active Directory on-premise sia nella raccolta di siti SharePoint alle identità nel servizio Cloud Identity. Questa sincronizzazione viene eseguita con Google Cloud Directory Sync (GCDS) e il connettore di identità di SharePoint on-prem.

Dopo che GCDS ha sincronizzato utenti e gruppi, per sincronizzare i gruppi di raccolte di siti SharePoint, esegui il connettore delle identità di SharePoint On-Prem. Infine, esegui il connettore Sharepoint on-prem per indicizzare e pubblicare i risultati per gli utenti di Cloud Search.

  1. Se non l'hai ancora fatto, configura ed esegui GCDS. Assicurati di attivare i gruppi con mappatura delle identità.

  2. Esegui il connettore di identità di SharePoint on-prem:

    $ java -Djava.util.logging.config.file=logging.properties -cp "google-cloudsearch-sharepoint-connector-version.jar" com.google.enterprise.cloudsearch.sharepoint.SharePointIdentityConnector -Dconfig=sharepoint-onprem-identity-connector.config
  3. Esegui il connettore SharePoint on-prem. Utilizza la sintassi del comando per la sicurezza del tuo sito SharePoint:

    • HTTP (nessun host attendibile richiesto):

      $ java -Djava.util.logging.config.file=logging.properties -jar google-cloudsearch-sharepoint-connector-v1-version.jar
    • HTTPS (aggiungi SharePoint come host attendibile):

      $ java -Djavax.net.ssl.trustStore=cacerts.jks -Djavax.net.ssl.trustStoreType=jks -Djavax.net.ssl.trustStorePassword=changeit -Djava.util.logging.config.file=logging.properties -jar google-cloudsearch-sharepoint-connector-v1-version.jar

Riferimento ai parametri di configurazione

Accesso a origine dati

Impostazione Parametro
ID origine dati api.sourceId=1234567890abcdef

Obbligatorio. L'ID origine dati di Google Cloud Search configurato dall'amministratore di Google Workspace.

Percorso del file della chiave privata dell'account di servizio api.serviceAccountPrivateKeyFile=PrivateKey.json

Obbligatorio. Il percorso del file della chiave dell'account di servizio Google Cloud Search.

Accesso a SharePoint on-premise

Impostazione Parametro
URL del server SharePoint sharepoint.server=http://yoursharepoint.example.com/

Obbligatorio. L'URL del server SharePoint come nome host completo, ad esempio http://yoursharepoint.example.com/. Se il nome host non è completamente qualificato, devi impostare l'override DNS sull'host del connettore.

Nome utente di SharePoint sharepoint.username=YOURDOMAIN\\ConnectorUser

Obbligatorio quando esegui il connettore su Linux o su una macchina Windows che non fa parte del dominio AD di SharePoint Server.

Password di SharePoint sharepoint.password=user_password

Obbligatorio quando esegui il connettore su Linux o su una macchina Windows che non fa parte del dominio AD di SharePoint Server.

Utilizzare l'autenticazione in tempo reale per connettersi a SharePoint sharepoint.username=AdaptorUser Live Authentication Id

sharepoint.password uS3R_passWoRD

sharepoint.formsAuthenticationMode=LIVE

Utilizzare l'autenticazione ADFS per connettersi a SharePoint sharepoint.username=AdaptorUser@yourdomain.com

sharepoint.password=uS3R_passWoRD

sharepoint.sts.endpoint=https://adfs.example.com/adfs/services/trust/2005/usernamemixed

sharepoint.sts.realm=urn:myserver:sharepoint o https://yoursharepoint.example.com/_trust

sharepoint.formsAuthenticationMode=ADFS

Indicizzazione della raccolta siti

Impostazione Parametro
Tipo di indice sharepoint.siteCollectionOnly=boolean

Facoltativo, ad eccezione dei deployment di SharePoint multi-tenant (scopri di più). Imposta su true per avere l'indice del connettore sharepoint.server come raccolta di siti anziché come server virtuale. Il valore predefinito è null (rilevato automaticamente).

Mappatura delle identità di SharePoint

Impostazione Parametro
ID origine identità api.identitySourceId=1234567890abcdef

Obbligatorio. L'ID origine dell'identità per la sincronizzazione dei gruppi locali di SharePoint.L'ID origine di Google Cloud Search configurato dall'amministratore di Google Workspace, come descritto in Aggiungere un'origine dati alla ricerca.

Origini identità di riferimento api.referenceIdentitySources=CONTOSO,contoso

Un elenco delimitato da virgole di origini identità di riferimento per gli account utente Active Directory. Il valore corrisponde al nome NETBIOS di Active Directory dei principali di Active Directory di riferimento.

ID origine identità di riferimento api.referenceIdentitySource.DOMAIN.id=identity-source-id

Obbligatorio. L'ID dell'origine identità per la sincronizzazione dei principali di Active Directory.

Ricerca in Active Directory

Impostazione Parametro
Host Active Directory adLookup.host=host

Obbligatorio. Nome host di Active Directory, ad esempio dc.contoso.com, o indirizzo IP.

Porta di ricerca Active Directory adLookup.port=port

Facoltativo. Il valore predefinito è 389. Utilizza 686 per SSL.

Metodo di ricerca in Active Directory adLookup.method=value

Facoltativo. Il valore predefinito è "standard". Per le connessioni HTTPS, imposta "ssl".

Utente di ricerca Active Directory adLookup.username=CONTOSO\user1

Obbligatorio. Utente autorizzato a eseguire ricerche in Active Directory.

Password di ricerca di Active Directory adLookup.password=password123

Obbligatorio. Password per l'utente specificato da adLookup.user.

Generazione di contenuti HTML

Impostazione Parametro
Campo del titolo del modello HTML contentTemplate.sharePointItem.title=Title

Il campo SharePoint da utilizzare come titolo del modello HTML per l'HTML generato.

Campi per la qualità di ricerca elevata dei contenuti HTML contentTemplate.sharePointItem.quality.high=highField1[,highField2,...]

Un elenco separato da virgole di campi da includere nel codice HTML generato come campi di alta qualità. Quando i termini della query di ricerca corrispondono a questi campi, i risultati hanno un ranking più elevato.

Campi della qualità della ricerca per contenuti HTML di media dimensione contentTemplate.sharePointItem.quality.medium=mediumField1[,mediumField2,...]

Un elenco separato da virgole di campi da includere nel codice HTML generato come campi di media qualità.

Campi della qualità di ricerca bassa dei contenuti HTML contentTemplate.sharePointItem.quality.low=lowField1[,lowField2,...]

Un elenco di campi separati da virgole da includere nel codice HTML generato come campi di bassa qualità.

Colonne non mappate dei contenuti HTML contentTemplate.sharepointItem.unmappedColumnsMode=APPEND

Come il connettore gestisce le colonne non mappate. Il valore è APPEND (predefinito) o IGNORE.

  • APPEND: il connettore genera contenuti HTML con tutti i campi, inclusi quelli non impostati con un livello di qualità (alto, medio o basso).
  • IGNORE: il connettore genera contenuti HTML con solo i campi mappati.