Vous pouvez configurer Google Cloud Search afin qu'il renvoie les résultats du contenu Sharepoint On-Prem de votre organisation, en plus de votre contenu Google Workspace. Vous utilisez le connecteur Google Cloud Search SharePoint On-Prem et configurez-le pour accéder à une source de données SharePoint spécifique.
Remarques importantes
Paramètres SharePoint respectés
Le connecteur Cloud Search SharePoint On-Prem respecte toujours le paramètre de visibilité de recherche défini dans SharePoint, qui ne peut pas être ignoré. 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 définis dans SharePoint.
Vous pouvez également configurer le connecteur pour limiter les résultats en fonction de l'accès au compte utilisateur. Vous pouvez utiliser les comptes principaux Google et externes pour définir les listes de contrôle d'accès. Pour appliquer un filtrage de sécurité au contenu SharePoint, synchronisez les identités externes suivantes avec l'annuaire Google:
- Utilisateurs Active Directory
- Groupes Active Directory
- Groupes locaux SharePoint (avec des utilisateurs et des groupes Active Directory en tant que membres)
Pour synchroniser les utilisateurs et les groupes AD, vous pouvez utiliser Google Cloud Directory Sync, qui active les groupes avec mappage d'identité. Pour synchroniser des groupes locaux SharePoint, utilisez le connecteur d'identité SharePoint.
Le connecteur doit également effectuer une recherche avec AD pour extraire des informations supplémentaires en vue de synchroniser les comptes principaux. Par exemple, la recherche avec AD permet au connecteur d'effectuer les opérations suivantes:
- Associer l'identificateur de sécurité (SID) d'un groupe de domaines au sAMAccountName correspondant.
- Associer le nom sAMAccountName d'un utilisateur à l'adresse e-mail des membres du groupe local SharePoint.
Optimisation du référencement
Vous pouvez améliorer l'expérience de vos utilisateurs 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 élevé sur les correspondances.
Si vous souhaitez configurer un schéma, suivez les instructions de la section Créer et enregistrer un schéma. Lorsque vous configurez un schéma:
Pour associer les noms des types de contenu SharePoint aux définitions d'objets correspondantes, le connecteur normalise ces noms en excluant les caractères non acceptés. Pour les définitions d'objets, l'API Cloud Search accepte uniquement 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 deux définitions d'objets, il utilise le type d'objet de remplacement (
itemMetadata.objectType
). En savoir plus sur les paramètres de configuration des métadonnéesPour associer les noms des propriétés SharePoint aux définitions de propriétés, le connecteur normalise ces noms en décodant les caractères encodés en hexadécimal et en supprimant les préfixes "ows_", puis en excluant les caractères non compatibles (tous les caractères autres que A à Z, a à z et 0 à 9).
Gestion des messages Microsoft Outlook
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.
.
Configurations multitenancy
Si votre SharePoint est un déploiement mutualisé, dans lequel plusieurs sites clients sont hébergés sur la même application Web, vous devez configurer le mode Collection de sites dans le fichier de configuration. Dans les déploiements multi-locataires, vous n'obtenez des autorisations que pour votre collection de sites et vous ne pouvez pas obtenir d'autorisations Lecture totale, comme l'exige le connecteur SharePoint On-Prem.
Pour activer le mode Collection de sites:
- Attribuez au compte utilisateur du connecteur l'autorisation d'administrateur sur la collection de sites.
- Dans le fichier de configuration du connecteur, définissez
sharepoint.server
sur l'URL de la collection de sites, telle quehttp://sharepoint.example.com/sites/sitecollection
. L'URL ne doit pas nécessairement être identique à celle utilisée dans SharePoint. - Dans le fichier de configuration du connecteur, définissez
sharepoint.siteCollectionOnly
surtrue
.
Pour indexer plusieurs collections de sites dans un environnement multi-tenant, vous devez configurer une instance de connecteur pour chacune des collections de sites.
Limites connues du connecteur
- Le temps nécessaire au connecteur pour détecter les modifications apportées aux éléments des bases de données augmente avec le nombre de bases de données surveillées par ledit connecteur.
- La consommation de mémoire augmente avec le nombre d'utilisateurs et de groupes uniques utilisés dans les LCA de chaque collection de sites.
- Vous ne pouvez configurer le connecteur qu'avec des identités provenant d'un seul domaine Active Directory.
- Certains comptes principaux Active Directory et Windows courants, tels que
Everyone
,BUILTIN\Users
etAll Authenticated Users
, ne sont pas compatibles. - Les notifications de suppression ne sont pas instantanées et 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 |
|
Logiciel |
|
Authentification |
|
Déployer le connecteur
Prérequis
Créez une clé privée Google Workspace qui contient 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.
Votre administrateur Google Workspace doit ajouter une source de données à la recherche. Notez l'ID de la source de données.
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 source d'identité pour la synchronisation des utilisateurs et des groupes Active Directory ;
- une source d'identité pour les groupes locaux SharePoint.
L'administrateur doit également obtenir le numéro client Google Workspace de votre organisation et vous le communiquer.
Découvrez comment obtenir ces valeurs dans la section Associer des identités d'utilisateurs dans Cloud Search.
Dans la règle relative aux utilisateurs, configurez un compte utilisateur pour le connecteur disposant des autorisations Lecture complète dans l'application Web SharePoint.
Si cette application ne possède pas de collection de sites racine, créez-en une.
Si des collections de sites sont verrouillées en écriture, connectez-vous au serveur SharePoint à l'aide d'un compte disposant de droits d'administrateur, puis exécutez le script
PrepareWriteLockedSites.ps1
.Pour collecter des métriques de source de données utiles à la configuration du connecteur, connectez-vous au serveur SharePoint à l'aide d'un compte disposant de droits d'administration de batterie de serveurs, puis exécutez la commande
diagnose_sp.ps1
.Le résultat indique le nombre d'applications Web, de documents et d'appartenances à des groupes d'utilisateurs. Ces informations vous permettent d'estimer le nombre d'instances de connecteur dont vous avez besoin, les besoins en mémoire et le nombre de documents.
Étape 1 : Installer le logiciel du connecteur Google Cloud Search SharePoint On-Prem
Clonez le dépôt du connecteur à partir de GitHub.
$ git clone https://github.com/google-cloudsearch/sharepoint-connector.git $ cd sharepoint-connector
Vérifiez la version souhaitée du connecteur:
$ git checkout tags/latest_version
Où
latest_version
correspond à une valeur telle quev1-0.0.5
.Compilez le connecteur.
$ mvn package
Pour ignorer les tests lorsque vous créez le connecteur, exécutez
mvn package -DskipTests
au lieu demvn package
.Copiez le fichier ZIP du connecteur dans votre répertoire d'installation local:
$ 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
Étape 2 : Créer le fichier de configuration du connecteur SharePoint On-Prem
Créez un fichier dans le même répertoire que les fichiers d'installation du connecteur. Google vous recommande de nommer ce fichier
connector-config.properties
pour pouvoir exécuter le connecteur via la ligne de commande sans aucun paramètre supplémentaire. Si vous prévoyez d'exécuter plusieurs instances de connecteur, ajoutez des détails au nom pour les distinguer.Ajoutez des paramètres sous forme de paires clé/valeur aux contenus des fichiers, comme dans l'exemple suivant:
### 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
Pour obtenir une description détaillée de chaque paramètre, consultez le guide de référence des paramètres de configuration.
(Facultatif) Configurez d'autres paramètres de connecteur, si nécessaire. Pour en savoir plus, consultez l'article Paramètres de connecteur fournis par Google.
Étape 3 : Ajouter SharePoint en tant qu'hôte approuvé pour HTTPS
Si SharePoint est configuré pour utiliser HTTPS, obtenez un certificat SharePoint pour l'ajouter en tant qu'hôte approuvé pour le connecteur.
Sur l'ordinateur qui exécutera le connecteur, ouvrez un navigateur et accédez à SharePoint.
Sur la page d'avertissement qui s'affiche, cliquez sur Je comprends les risques, puis sur Ajouter une exception. Un message de type "Cette connexion n'est pas approuvée" s'affiche pour vous informer que le certificat est autosigné, et non signé par une autorité de certification approuvée.
Cliquez sur le bouton Afficher dès qu'il est disponible.
Accédez à l'onglet Détails, puis cliquez sur Exporter.
Enregistrez le certificat dans le répertoire du connecteur sous le nom
sharepoint.crt
.Cliquez sur Fermer, puis sur Annuler pour fermer les fenêtres.
Ouvrez une invite de commande, puis saisissez la commande suivante:
$ keytool -importcert -keystore cacerts.jks -storepass changeit -file sharepoint.crt -alias sharepoint
À l'invite "Faire confiance à ce certificat ?", répondez oui.
Étape 4 : Configurer la journalisation
Dans le répertoire contenant le binaire du connecteur, créez un dossier nommé
logs
.Dans ce même répertoire (et non dans
logs
), créez un fichier encodé en Latin1 nommélogging.properties
.Ajoutez le texte suivant à
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
Étape 5 : Configurer le connecteur d'identité SharePoint On-Prem
Cette étape est nécessaire pour appliquer les LCA d'identité SharePoint On-Prem aux résultats de la recherche. Si vous configurez le connecteur avec des LCA publiques, vous pouvez ignorer cette étape.
Dans le même répertoire que celui de l'installation du connecteur SharePoint Online, créez un fichier nommé
sharepoint-onprem-identity-connector.config
.Ajoutez des paramètres sous forme de paires clé/valeur aux contenus des fichiers, comme dans l'exemple suivant:
### 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
Les valeurs sont presque les mêmes que pour le connecteur SharePoint On-Prem, si ce n'est que le paramètre est
api.customerId
au lieu deapi.sourceId
. La valeur deapi.customerId
correspond au numéro client que vous avez obtenu auprès de votre administrateur Google Workspace.
Étape 6 : Lancer le connecteur SharePoint On-Prem
Dans les étapes suivantes, vous allez associer les comptes principaux figurant dans Active Directory sur site et dans la collection de sites SharePoint aux identités du service Cloud Identity. Cette synchronisation s'effectue avec Google Cloud Directory Sync (GCDS) et le connecteur d'identité SharePoint On-Prem.
Une fois les utilisateurs et les groupes synchronisés par GCDS, exécutez le connecteur d'identité SharePoint On-Prem pour synchroniser les groupes de la collection de sites SharePoint. Enfin, exécutez le connecteur SharePoint On-Prem pour indexer et fournir les résultats à vos utilisateurs Cloud Search.
Si vous ne l'avez pas déjà fait, configurez et exécutez GCDS. Assurez-vous d'activer les groupes de mappage d'identité.
Exécutez le connecteur d'identité 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
Exécutez le connecteur SharePoint On-Prem. Utilisez la syntaxe de commande pour la sécurité de votre site SharePoint:
HTTP (aucun hôte de confiance requis):
$ java -Djava.util.logging.config.file=logging.properties -jar google-cloudsearch-sharepoint-connector-v1-version.jar
HTTPS (ajoutez SharePoint en tant qu'hôte approuvé):
$ 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
Guide de référence des paramètres de configuration
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 sur site à SharePoint
Paramètre | Paramètre |
URL du serveur SharePoint | sharepoint.server=http://yoursharepoint.example.com/
Obligatoire. URL du serveur SharePoint en tant que nom d'hôte complet, par exemple http://yoursharepoint.example.com/. Si le nom d'hôte n'est pas complet, vous devez définir le remplacement DNS sur l'hôte du connecteur. |
Nom d'utilisateur SharePoint | sharepoint.username=YOURDOMAIN\\ConnectorUser
Obligatoire lorsque vous exécutez le connecteur sous Linux ou sur une machine Windows n'appartenant pas au domaine Active Directory SharePoint Server. |
Mot de passe SharePoint | sharepoint.password=user_password
Obligatoire lorsque vous exécutez le connecteur sous Linux ou sur une machine Windows n'appartenant pas au domaine Active Directory SharePoint Server. |
Utiliser Live Authentication pour la connexion à SharePoint | sharepoint.username=AdaptorUser Live Authentication Id
|
Utiliser l'authentification ADFS pour la connexion à SharePoint | sharepoint.username=AdaptorUser@yourdomain.com
|
Indexation de la collection de sites
Paramètre | Paramètre |
Type d'index | sharepoint.siteCollectionOnly=boolean
Facultatif, sauf pour les déploiements SharePoint mutualisés (En savoir plus). Définissez la valeur sur "true" pour que le connecteur indexe |
Mappage d'identité SharePoint
Paramètre | Paramètre |
ID de la source d'identité | api.identitySourceId=1234567890abcdef
Obligatoire. ID de la source d'identité pour la synchronisation des groupes locaux SharePoint.ID source de Google Cloud Search configuré par l'administrateur Google Workspace, comme décrit dans Ajouter une source de données à la recherche. |
Sources d'identité de référence | api.referenceIdentitySources=CONTOSO,contoso
Liste des sources d'identité de référence séparées par une virgule pour les comptes principaux Active Directory. La valeur correspond au nom NETBIOS Active Directory des comptes principaux Active Directory de référence. |
ID de source d'identité de référence | api.referenceIdentitySource.DOMAIN.id=identity-source-id
Obligatoire. ID de la source d'identité pour la synchronisation des comptes principaux Active Directory. |
Recherche Active Directory
Paramètre | Paramètre |
Hôte Active Directory | adLookup.host=host
Obligatoire. Nom d'hôte Active Directory, par exemple dc.contoso.com, ou adresse IP. |
Port de recherche Active Directory | adLookup.port=port
Facultatif. La valeur par défaut est 389. Utilisez la valeur 686 pour SSL. |
Méthode de recherche Active Directory | adLookup.method=value
Facultatif. La valeur par défaut est "standard". Pour les connexions HTTPS, définissez la valeur sur "ssl". |
Utilisateur de recherche Active Directory | adLookup.username=CONTOSO\user1
Obligatoire. Utilisateur autorisé à effectuer des recherches Active Directory. |
Mot de passe de recherche Active Directory | adLookup.password=password123
Obligatoire. Mot de passe de l'utilisateur spécifié par |
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.
|