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 SharePoint honorés

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 dispose uniquement de l'autorisation "Lecture complète", le connecteur respecte les paramètres de visibilité des éléments de brouillon définis dans SharePoint.

Vous configurez également 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 (avec des utilisateurs et des groupes Office 365 en tant que membres)

Optimisation du référencement

Vous pouvez améliorer l'expérience de vos utilisateurs en configurant le connecteur de sorte 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 les champs qui ont un impact plus ou moins important sur les correspondances.

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

  • Pour faire correspondre les noms des types de contenu SharePoint avec les définitions d'objet correspondantes, le connecteur normalise ces noms en excluant les caractères non acceptés. 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 à "ArticleActualités" (sans espace).

  • Lorsque le connecteur ne parvient 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 sur 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 et un connecteur peut mettre plus de quatre heures à reconnaître 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écutera le connecteur Google Cloud Search SharePoint Online

Déployer le connecteur

Prérequis

  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 à la recherche. Notez l'ID de la source de données.

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

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

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

    Découvrez comment obtenir ces valeurs dans Associer des identités d'utilisateur dans Cloud Search.

  4. Configurez un compte utilisateur pour le connecteur disposant des droits d'administrateur de 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 accéder aux utilisateurs et aux groupes de votre compte Office 365. Suivez les instructions de Microsoft pour créer une application Azure Active Directory. Lorsque vous configurez l'application:

    1. Attribuez un nom descriptif à l'application, par exemple "gcs-o365-identity-connector".
    2. Ajoutez des autorisations. L'application doit disposer des autorisations "Group.Read.All" et "User.Read.All".
    3. Notez les informations suivantes afin de les utiliser dans 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 à partir de 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 lors de la création du 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. Dans le même répertoire que les fichiers d'installation du connecteur, créez un fichier nommé sharepoint-online-connector.config. 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 Latin-1 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 d'identité SharePoint Online aux résultats de la recherche. Si vous avez configuré le connecteur avec des LCA publiques, vous pouvez ignorer cette étape.

  1. Dans le même répertoire que celui de l'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, si ce n'est 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 d'identité SharePoint Online aux résultats de la recherche. Si vous avez configuré le connecteur avec des LCA publiques, vous pouvez ignorer cette étape.

  1. Clonez le dépôt du connecteur à partir de 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 lors de la création du 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. Dans le même répertoire que les fichiers d'installation du connecteur d'identité, créez un fichier nommé o365-identity-connector.config.

  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 sur les identités du service Cloud Identity. Cette synchronisation s'effectue à l'aide du connecteur d'identité Office 365 et du connecteur d'identité SharePoint Online.

Une fois que le connecteur Office 365 a synchronisé les utilisateurs et les groupes, exécutez le connecteur d'identité SharePoint Online pour synchroniser les groupes de la collection de sites SharePoint. Vous allez ensuite exécuter le connecteur SharePoint Online pour indexer et transmettre 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 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è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 qualité de recherche élevée pour le contenu HTML 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 de support 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 faible qualité de recherche du contenu HTML 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 du 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 de "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 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. Secret des identifiants issus de la configuration de l'application Office 365