Déployer le connecteur Microsoft SharePoint Online

Vous pouvez configurer Google Cloud Search afin qu'il renvoie les résultats du contenu SharePoint Online de votre organisation, en plus de votre contenu Google Workspace. Utilisez le connecteur Cloud Search SharePoint Online et configurez-le pour accéder à une source de données SharePoint Online spécifique.

Remarques importantes

Avant de déployer le connecteur SharePoint Online, tenez compte des points suivants.

Paramètres SharePoint respectés

Le connecteur respecte toujours le paramètre de visibilité de recherche défini dans SharePoint. Pour les documents provisoires, les autorisations du compte utilisateur permettant au connecteur d'accéder à SharePoint Online contrôlent quels documents provisoires sont indexés et renvoyés. Si le compte dispose uniquement de l'autorisation "Lecture totale", le connecteur respecte les paramètres de visibilité des éléments de brouillon.

Vous pouvez également configurer le connecteur pour limiter les résultats en fonction de l'accès au compte utilisateur. Pour appliquer le filtrage de sécurité, synchronisez ces identités externes avec l'annuaire Google Cloud :

  • Utilisateurs Office 365 / Azure AD.
  • Groupes de sécurité Office 365 / Azure AD.
  • Groupes SharePoint (ayant comme membres des utilisateurs et des groupes Office 365)

Optimisation pour le Réseau de Recherche

Améliorez l'expérience de recherche en configurant le connecteur pour qu'il renvoie des résultats pertinents. Utilisez les paramètres de génération HTML dans le fichier de configuration pour définir les niveaux d'impact des champs.

Pour configurer un schéma, consultez Créer et enregistrer un schéma. Lorsque vous configurez un schéma :

  • Le connecteur normalise les types de contenu SharePoint en noms de définition d'objet valides (A-Z, a-z, 0-9). Par exemple, "News Article" devient "NewsArticle".
  • Si le connecteur ne parvient pas à faire correspondre une définition d'objet, il utilise le type d'objet de remplacement (itemMetadata.objectType). Consultez Paramètres de configuration des métadonnées.
  • Le connecteur mappe les noms de propriété SharePoint sur les définitions de propriété.
  • Le connecteur remplace le type de contenu des fichiers .msg Microsoft Outlook et les indexe en tant que application/vnd.ms-outlook.

Limitations connues des connecteurs

  • Chaque instance de connecteur n'indexe le contenu que d'une seule collection de sites. Pour indexer plusieurs collections de sites, vous devez configurer des instances supplémentaires.
  • La consommation de mémoire augmente avec le nombre d'utilisateurs et de groupes uniques dans les LCA.
  • La prise en compte des notifications de suppression peut prendre plus de quatre heures.

Configuration requise

Configuration requise
Système d'exploitation Windows Server 2016, Ubuntu, Red Hat Enterprise Linux 5.0 ou SUSE Enterprise Linux 10 (64 bits)
Authentification Live Authentication
Logiciel Environnement SharePoint Online ; Java JRE 1.8

Déployer le connecteur

Suivez ces étapes pour déployer le connecteur SharePoint Online.

Prérequis

  1. Créez une clé privée Google Workspace. Consultez Configurer l'accès à l'API Cloud Search.
  2. Ajoutez une source de données dans laquelle effectuer une recherche et notez son ID. Consultez Ajouter une source de données à la recherche.
  3. Pour les résultats basés sur des LCA, votre administrateur doit créer deux sources d'identité (une pour les groupes Office 365 et une pour les groupes SharePoint) et fournir le numéro client Google Workspace. Consultez Associer les identités des utilisateurs.
  4. Configurez un compte utilisateur pour le connecteur disposant des droits d'administrateur sur la collection de sites SharePoint Online.
  5. Créez des identifiants d'application Azure Active Directory avec les autorisations Group.Read.All et User.Read.All. Notez l'ID d'application, le locataire et le code secret du client.

Étape 1 : Installer le logiciel du connecteur

  1. Clonez le dépôt :
    $ git clone https://github.com/google-cloudsearch/sharepoint-connector.git
    $ cd sharepoint-connector
  2. Consultez la version sélectionnée (par exemple, v1-0.0.3) :
    $ git checkout tags/v1-0.0.3
  3. Compilez le connecteur :
    $ mvn package
    Pour ignorer les tests, utilisez mvn package -DskipTests.
  4. Extrayez le fichier ZIP dans votre répertoire d'installation.

Étape 2 : Créer le fichier de configuration

Créez sharepoint-online-connector.config dans le répertoire d'installation. Ajoutez des paramètres sous forme de paires clé/valeur, comme dans l'exemple suivant :

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

Pour en savoir plus, consultez la documentation de référence ou les paramètres fournis par Google.

Étape 3 : Configurer la journalisation

Créez un dossier logs et un fichier logging.properties avec le contenu suivant :

   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

Étape 4 : Configurer le connecteur d'identité SharePoint

Pour appliquer des LCA basées sur l'identité, créez sharepoint-online-identity-connector.config avec votre api.customerId et d'autres paramètres de connexion, comme dans l'exemple suivant :

```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
```

Étape 5 : Installer le connecteur d'identité Office 365

Si vous utilisez des LCA basés sur l'identité SharePoint Online, effectuez cette étape. Si vous utilisez des LCA publiques, ignorez cette étape.

  1. Clonez le dépôt Office 365 :

    $ git clone https://github.com/google-cloudsearch/office-365-connector.git
    $ cd office-365-connector
    
  2. Extrayez et créez le connecteur à l'aide de mvn package.

  3. Extrayez le fichier ZIP dans votre répertoire d'installation.

Étape 6 : Configurer le connecteur d'identité Office 365

  1. Dans le même répertoire que celui de l'installation du connecteur d'identité, créez un fichier nommé o365-identity-connector.config et ajoutez des paramètres sous forme de paires clé/valeur :

    ### 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>
    

    Pour obtenir une description des paramètres, consultez Connecteur d'identité Office 365.

  2. Dans le même répertoire, créez un dossier nommé logs.

  3. Dans le même répertoire, créez un fichier nommé logging.properties avec le contenu suivant :

       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
    

Étape 7 : Lancer le connecteur

Une fois les connecteurs configurés, exécutez-les pour lancer la synchronisation et l'indexation. Exécutez chaque commande dans sa propre fenêtre de terminal.

  1. Exécutez le connecteur d'identité Office 365 pour synchroniser les utilisateurs et les groupes :

    $ java -Djava.util.logging.config.file=logging.properties -jar google-cloudsearch-office-365-connector-v1-0.0.3.jar -Dconfig=o365-identity-connector.config
    
  2. Exécutez le connecteur d'identité SharePoint Online pour synchroniser les groupes de la collection 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.config
    
  3. Exécutez le connecteur SharePoint Online pour indexer le contenu :

    $ java -Djava.util.logging.config.file=logging.properties -jar google-cloudsearch-sharepoint-connector-v1-0.0.3.jar -Dconfig=sharepoint-online-connector.config
    

Guide de référence des paramètres de configuration

Les sections suivantes listent les paramètres de configuration utilisés pour configurer le connecteur SharePoint Online.

Accès à la source de données

Paramètre Paramètre
ID de la source de données api.sourceId=1234567890abcdef

Obligatoire. ID de la source de données Google Cloud Search configuré par l'administrateur Google Workspace.

Chemin d'accès au fichier contenant la clé privée du compte de service api.serviceAccountPrivateKeyFile=PrivateKey.json

Obligatoire. Chemin d'accès au fichier de clé du compte de service Google Cloud Search.

Accès à SharePoint Online

Paramètre Paramètre
Nom de domaine complet de la collection de sites SharePoint sharepoint.server=http://yoursharepoint.example.com/

Obligatoire. Si le nom de domaine n'est pas complet, vous devez définir le remplacement DNS sur l'hôte du connecteur.

Mode Collection de sites uniquement sharepoint.siteCollectionOnly=true

Obligatoire. Pour SharePoint Online, définissez la valeur sur true.

Nom d'utilisateur SharePoint sharepoint.username=username

Obligatoire. Nom d'utilisateur du compte utilisé pour accéder à SharePoint Online.

Mot de passe SharePoint sharepoint.password=user_password

Obligatoire. Mot de passe du compte utilisé pour accéder à SharePoint Online.

Mode d'authentification sharepoint.formsAuthenticationMode=LIVE

Obligatoire. Pour SharePoint Online, la valeur est toujours "LIVE".

Type de déploiement sharepoint.deploymentType=ONLINE

Obligatoire. Pour SharePoint Online, la valeur est toujours "ONLINE".

Mappage d'identité SharePoint

Paramètre Paramètre
ID de la source d'identité api.identitySourceId=1234567890abcdef

Obligatoire. ID de la source d'identité Cloud Search pour la source d'identité des groupes SharePoint.

Sources d'identité de référence api.referenceIdentitySources=defaultIdentitySource

Obligatoire. Pour SharePoint Online, la valeur est toujours "defaultIdentitySource".

ID de source d'identité de référence api.referenceIdentitySource.defaultIdentitySource.id=112233abcd

Obligatoire. ID de la source d'identité Cloud Search pour la source d'identité des utilisateurs et des groupes Office 365.

Génération de contenu HTML

Paramètre Paramètre
Champ de titre du modèle HTML contentTemplate.sharePointItem.title=Title

Champ SharePoint à utiliser comme titre du modèle HTML pour le code HTML généré.

Champs de qualité de recherche de contenu HTML élevée contentTemplate.sharePointItem.quality.high=highField1[,highField2,...]

Liste de champs séparés par une virgule à inclure dans le code HTML généré en tant que champs de qualité élevée. Lorsque les termes de la requête de recherche correspondent à ces champs, les résultats sont mieux classés.

Champs de qualité de recherche de contenu HTML moyenne contentTemplate.sharePointItem.quality.medium=mediumField1[,mediumField2,...]

Liste de champs séparés par une virgule à inclure dans le code HTML généré en tant que champs de qualité moyenne.

Champs de qualité de recherche de contenu HTML faible contentTemplate.sharePointItem.quality.low=lowField1[,lowField2,...]

Liste de champs séparés par une virgule à inclure dans le code HTML généré en tant que champs de faible qualité.

Colonnes non mappées de contenu HTML contentTemplate.sharepointItem.unmappedColumnsMode=APPEND

Façon dont le connecteur gère les colonnes non mappées. La valeur de ce paramètre est APPEND (par défaut) ou IGNORE.

  • APPEND : le connecteur génère du contenu HTML avec tous les champs, y compris ceux dont le niveau de qualité n'est pas défini (élevé, moyen ou faible).
  • IGNORE : le connecteur génère du contenu HTML avec des champs mappés uniquement.

Configuration du connecteur d'identité Office 365

Paramètre Paramètre
ID de la source d'identité api.identitySourceId=1234567890abcdef

Obligatoire. ID de la source d'identité Office 365. Cette valeur doit correspondre à la valeur de "api.referenceIdentitySource.defaultIdentitySource.id" dans la configuration du connecteur SharePoint Online.

ID client Google api.customerId=c1b1d1e1

Obligatoire. Numéro client Google Workspace de votre organisation.

ID application Office 365 o365.clientId=a63c6eb3-29e7-486

Obligatoire. ID application provenant de la configuration de l'application Office 365.

Locataire Office 365 o365.tenant=185ef9ed-29e7-486

Obligatoire. Locataire de votre compte Office 365 (votre application Azure Activity Directory)

Code secret du client Office 365 o365.clientSecret=raHJN15vRLBKs

Obligatoire. Code secret provenant de la configuration de l'application Office 365.