Déployer le connecteur Microsoft SharePoint Online

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

Remarques importantes

Paramètres Honored SharePoint

Le connecteur Cloud Search SharePoint Online respecte toujours le paramètre Visibilité de recherche défini dans SharePoint, qui ne peut pas être ignoré. Pour les brouillons de documents, les autorisations du compte utilisateur (utilisé par le connecteur pour accéder à SharePoint Online) déterminent quels brouillons de documents sont indexés et renvoyés. Si le compte ne dispose que de l'autorisation "Lecture totale", le connecteur respecte les paramètres de visibilité des éléments de brouillon définis dans SharePoint.

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

  • 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 du référencement

Vous pouvez améliorer l'expérience utilisateur en configurant le connecteur afin qu'il renvoie des résultats de recherche plus pertinents.

Pour utiliser l'API, définissez des valeurs pour les paramètres de génération HTML dans le fichier de configuration du connecteur SharePoint Online. Ces paramètres vous permettent de définir quels champs ont un impact plus ou moins important sur les correspondances.

Pour configurer un schéma, suivez les instructions de la section Créer et enregistrer un schéma. Lorsque vous configurez un schéma:

  • Pour mapper les noms des types de contenu SharePoint avec les définitions d'objets correspondantes, le connecteur normalise ces noms en excluant les caractères non compatibles. Pour les définitions d'objet, l'API Cloud Search n'accepte que les caractères A-Z, a-z et 0-9. Par exemple, le type de contenu "Annonces" correspond à la définition d'objet "Annonces". Le type de contenu "Article d'actualités" correspond à "Articled'Actualités" (sans espace).

  • Lorsque le connecteur ne peut pas faire correspondre une définition d'objet à une définition d'objet, il utilise le type d'objet de remplacement (itemMetadata.objectType). En savoir plus sur les paramètres de configuration des métadonnées

  • Le connecteur mappe les noms de propriété SharePoint avec les définitions de propriété.

  • Lorsque le connecteur rencontre des fichiers .msg Microsoft Outlook lors de l'indexation du contenu, il remplace le type de contenu des fichiers et les indexe en tant que application/vnd.ms-outlook..

Limites connues concernant les connecteurs

  • Chaque instance de connecteur ne peut indexer le contenu que d'une seule collection de sites. Pour indexer plusieurs collections de sites, configurez des instances de connecteur supplémentaires.
  • La consommation de mémoire augmente avec le nombre d'utilisateurs et de groupes uniques que vous utilisez dans les LCA pour chaque collection de sites.
  • Les notifications de suppression ne sont pas instantanées. Il peut s'écouler plus de quatre heures avant qu'un connecteur reconnaisse qu'un utilisateur a supprimé du contenu du dépôt source.

Configuration requise

Configuration requise
Système d'exploitation
  • Windows Server 2016
  • Ubuntu
  • Red Hat Enterprise Linux 5.0
  • SUSE Enterprise Linux 10 (64 bits)
Authentification
  • Authentification en direct
Logiciels
  • Environnement SharePoint Online
  • Java JRE 1.8 installé sur l'ordinateur qui exécute le connecteur Google Cloud Search SharePoint Online

Déployer le connecteur

Conditions préalables

  1. Créez une clé privée Google Workspace contenant l'ID de votre compte de service. Pour savoir comment obtenir une clé privée, consultez Configurer l'accès à l'API Google Cloud Search.

  2. Votre administrateur Google Workspace doit ajouter une source de données pour la recherche. Notez l'ID de la source de données.

  3. Si le connecteur renvoie des résultats basés sur des LCA (les résultats ne sont pas publics), votre administrateur Google Workspace doit créer deux sources d'identité et vous fournir leurs ID:

    • une pour les utilisateurs et les groupes Office 365
    • une pour les groupes SharePoint

    L'administrateur doit également obtenir le numéro client Google Workspace de votre organisation et vous le communiquer.

    Pour savoir comment obtenir ces valeurs, consultez l'article Associer des identités d'utilisateur dans Cloud Search.

  4. Configurez un compte utilisateur pour le connecteur disposant des droits d'administrateur sur la collection de sites SharePoint Online.

  5. Si le connecteur renvoie des résultats basés sur des LCA (résultats non publics), créez des identifiants pour lire les utilisateurs et les groupes de votre compte Office 365. Suivez les instructions de Microsoft pour créer une application Azure Active Directory. Pendant la configuration de l'application:

    1. Attribuez un nom descriptif à l'application, par exemple "gcs-o365-identity-connector".
    2. Ajoutez des autorisations. L'application doit disposer de "Group.Read.All" et "User.Read.All".
    3. Notez les informations suivantes à utiliser lors de la configuration du connecteur :
      • ID application
      • Locataire
      • Code secret du client

Étape 1. Installer le logiciel du connecteur SharePoint Online

  1. Clonez le dépôt du connecteur depuis GitHub.

    $ git clone https://github.com/google-cloudsearch/sharepoint-connector.git
    $ cd sharepoint-connector
  2. Vérifiez la version souhaitée du connecteur:

    $ git checkout tags/v1-0.0.3
  3. Créez le connecteur.

    $ mvn package

    Pour ignorer les tests lorsque vous créez le connecteur, exécutez mvn package -DskipTests au lieu de mvn package.

  4. Copiez le fichier ZIP du connecteur dans votre répertoire d'installation local:

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

Étape 2 : Créer le fichier de configuration du connecteur SharePoint Online

  1. Créez un fichier nommé sharepoint-online-connector.config dans le même répertoire que les fichiers d'installation du connecteur. Si vous prévoyez d'exécuter plusieurs instances de connecteur, ajoutez des détails au nom pour les distinguer.

  2. Ajoutez des paramètres sous forme de paires clé/valeur aux contenus des fichiers, comme dans l'exemple suivant:

    ### SharePoint Online connector configuration ###
    
    # Required parameters for data source access
    api.sourceId=08ef8becd116faa4546b8ca2c84b2879
    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
    
    # Optional SharePoint List Item metadata parameters
    contentTemplate.sharepointItem.title=Title
    contentTemplate.sharepointItem.unmappedColumnsMode=APPEND
    

    Pour obtenir une description détaillée de chaque paramètre, consultez la documentation de référence sur les paramètres de configuration.

  3. (Facultatif) Configurez d'autres paramètres de connecteur, si nécessaire. Pour en savoir plus, consultez Paramètres de connecteur fournis par Google.

Étape 3. Configurer la journalisation pour le connecteur SharePoint Online

  1. Créez un dossier nommé logs dans le répertoire contenant le binaire du connecteur.

  2. Créez un fichier encodé en Latin1 nommé logging.properties dans le même répertoire et ajoutez 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 Online

Cette étape est nécessaire pour appliquer les LCA basées sur l'identité de SharePoint Online aux résultats de la recherche. Si vous configurez le connecteur avec des LCA publiques, vous pouvez ignorer cette étape.

  1. Dans le répertoire d'installation du connecteur SharePoint Online, créez un fichier et nommez-le sharepoint-online-identity-connector.config.

  2. Ajoutez des paramètres sous forme de paires clé/valeur aux contenus des fichiers, comme dans l'exemple suivant:

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

    Les valeurs sont presque les mêmes que pour le connecteur SharePoint Online, sauf que le paramètre est api.customerId au lieu de api.sourceId. La valeur de api.customerId correspond au numéro client que vous avez obtenu auprès de votre administrateur Google Workspace.

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

Cette étape est nécessaire pour appliquer les LCA basées sur l'identité de SharePoint Online aux résultats de la recherche. Si vous configurez le connecteur avec des LCA publiques, vous pouvez ignorer cette étape.

  1. Clonez le dépôt du connecteur depuis GitHub.

    $ git clone https://github.com/google-cloudsearch/office-365-connector.git
    $ cd office-365-connector
  2. Vérifiez la version souhaitée du connecteur:

    $ git checkout tags/v1-0.0.3
  3. Créez le connecteur.

    $ mvn package

    Pour ignorer les tests lorsque vous créez le connecteur, exécutez mvn package -DskipTests au lieu de mvn package.

  4. Copiez le fichier ZIP du connecteur dans votre répertoire d'installation local:

    $ cp target/google-cloudsearch-office-365-connector-v1-0.0.3.zip installation-dir
    $ cd installation-dir
    $ unzip google-cloudsearch-office-365-connector-v1-0.0.3.zip
    $ cd google-cloudsearch-office-365-connector-v1-0.0.3

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

  1. Créez un fichier nommé o365-identity-connector.config dans le même répertoire que celui d'installation du connecteur d'identité.

  2. Ajoutez des paramètres sous forme de paires clé/valeur aux contenus des fichiers, comme dans l'exemple suivant. Remarque: Tous les paramètres sont obligatoires.

    ### Office 365 Identity connector configuration ###
    api.identitySourceId=12345abcde api.customerId=abcde12345 o365.clientId=a63c6eb3-29e7-486 o365.tenant=185ef9ed-29e7-486 o365.clientSecret=raHJN15vRLBKs

    Pour obtenir une description détaillée de chaque paramètre, consultez la documentation de référence sur la configuration du connecteur d'identité Office 365.

  3. Créez un dossier nommé logs dans le répertoire contenant le binaire du connecteur.

  4. Créez un fichier ASCII ou UTF-8 nommé logging.properties dans le même répertoire et ajoutez 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 SharePoint Online

Dans les étapes suivantes, vous allez mapper les comptes principaux d'Office 365 et de la collection de sites SharePoint aux identités du service Cloud Identity. Cette synchronisation est effectuée avec le connecteur d'identité Office 365 et le connecteur d'identité SharePoint Online.

Une fois les utilisateurs et les groupes synchronisés par le connecteur Office 365, exécutez le connecteur d'identité SharePoint Online pour synchroniser les groupes de la collection de sites SharePoint. Vous exécutez ensuite le connecteur SharePoint Online pour indexer et fournir les résultats à vos utilisateurs Cloud Search.

  1. Exécutez le connecteur d'identité Office 365:

    $ 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:

    $ java -Djava.util.logging.config.file=logging.properties -cp "google-cloudsearch-sharepoint-connector-v1-0.0.3.jar" com.google.enterprise.cloudsearch.sharepoint.SharePointIdentityConnector -Dconfig=sharepoint-online-identity-connector.config
  3. Exécutez le connecteur SharePoint Online:

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

Documentation de référence sur les paramètres de configuration

Accès à la source de données

Paramètre Paramètres
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 de clé privée du compte de service api.serviceAccountPrivateKeyFile=PrivateKey.json

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

Accès à SharePoint Online

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

Obligatoire. Si le nom de domaine n'est pas complet, définissez 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 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ètres
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 des sources 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ètres
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 contenu HTML offrant une qualité de recherche é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 haute qualité. Lorsque les termes de la requête de recherche correspondent à ces champs, les résultats sont mieux classés.

Champs de qualité de recherche moyenne de contenu HTML 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 contenu HTML de faible qualité de recherche 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 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).
  • IGNORER : le connecteur génère du contenu HTML avec uniquement des champs mappés.

Configuration du connecteur d'identité Office 365

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

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

Numéro client Google api.customerId=c1b1d1e1

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

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

Obligatoire. ID d'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. Secret des identifiants issus de la configuration de l'application Office 365