[extrait] Le moteur de recherche global
Régulièrement, je vous propose des extraits de mes deux derniers livres pour partager avec vous quelques points qui me semblent importants.

S'il y a un sujet qui revient régulièrement sur le bureau des différentes directions informatiques, c'est bien celui-ci : le moteur de recherche d'entreprise, encore appelé le méta moteur de recherche, ou le moteur de recherche global d'entreprise.
StartFragment
Le constat qui est à la base du besoin, et l'attente que l'entreprise en a sont très simples :
- CONSTAT : il y a de plus en plus d'information dans l'entreprise (documents, et autres), partout, et on ne sait pas comment les trouver ni comment y accéder
- SOLUTION : simple ! Il suffit de mettre en place un méta moteur de recherche qui permettra en tapant quelques mots de trouver toutes les informations nécessaires, où qu'elle soit dans l'entreprise.
Tout semble très simple et la puissance de Google nous rappelle tous les jours que ça peut fonctionner. Sauf qu'Internet, ça n'est pas l'intranet de votre entreprise.
Dans le chapitre intitulé "le moteur de recherche d'entreprise" du livre "PENSER AUTREMENT l'intranet, la digitalisation et le réseau social d'entreprise" (cliquer ici) j'évoque les difficultés de ce type de projet.
EXTRAIT (PAGE 85) PENSER AUTREMENT intranet, digitalisation et RSE
LE PERIMETRE DE LA RECHERCHE
Chercher c’est bien : mais chercher quoi et où ? Cette question a l’air idiote, mais c’est en fait le nerf de la guerre. Car le champ de recherche d'un éventuel moteur d'entreprise est vaste. Très vaste.
Faut-il (vraiment) chercher partout dans l’entreprise ?
Quand personne au sein de l’entreprise ne sait répondre à la question « où le moteur d’entreprise doit-il chercher ? », très souvent la réponse qui est donnée à celui qui doit le mettre en œuvre (la DSI souvent) c’est : « il doit chercher partout ».
A mon sens, c’est une très mauvaise réponse, parce que les sources de données en entreprise sont multiples et de plusieurs natures.
Rechercher partout ? Pas simple !
Dire que le moteur doit chercher « partout », c’est potentiellement intégrer toutes les sources de données dans le périmètre de recherche. Mais ce n’est pas possible :
… parce que pour intégrer certaines de ces sources de données (comme les données provenant des outils métier, au sein des bases de données), il faudrait éventuellement développer des connecteurs, ce qui coûterait fort cher,
… parce que, bien évidemment, tout n’est pas pertinent à intégrer dans un moteur de recherche d’entreprise. Certaines sources n’ont aucun intérêt
Exemples avec quelques contenus
Par exemple, est-ce que certains des outils métier Web qui contiennent des informations structurées (stockées en base de données) sont concernés ? Cela permettrait, en cherchant certains mots, de tomber sur des informations gérées par un outil métier. Car souvenez-vous que l’information, ce ne sont pas que des documents bureautiques.
Mais l'intégration des outils métier dans le périmètre de la recherche n'est pas simple, car tous ces outils ne sont pas forcément prévus pour être "crawlés" (parcourus) par un moteur, ni pour exposer leurs données de façon lisible.
Il y a également des questions de règles d'accessibilité aux informations (gestion des droits), qui reposent souvent sur des mécanismes propres à l’application sur lesquels le moteur peut difficilement s’appuyer.
Prenons quelque chose de plus simple : par exemple, SharePoint, produit plus connu pour ses fonctionnalités de GED que ses fonctionnalités collaboratives.
Mais là aussi, ce n’est pas si simple : il y a souvent plusieurs centaines ou milliers de sites SharePoint dans l'entreprise. Certains sont pertinents et actualisés, d'autres sont "morts" (avec des données obsolètes ou pas, allez savoir). Certains de ces sites sont des sites SharePoint "métier", d'autres des sites 100% documentaires avec des centaines de documents. Mais tous sont-ils pertinents ?
Plus compliqué : tous ces sites n'intègrent pas des données forcément utiles. Par défaut, SharePoint positionne à "oui" l'indexation de toutes les listes de données (documents ou autres). De sorte qu'un moteur qui "crawlerait" tous les sites indexerait tout, y compris des données provenant de listes sans aucun intérêt. Par exemple, dans certains de mes sites, je me fais parfois des listes documentaires pour mettre à l'écart des versions avant modification : faut-il que ces documents par définition non finalisés remontent aux utilisateurs ?
Le problème est identique, voir plus complexe encore, pour toutes les sources documentaires qui restent encore aujourd’hui sur vos vieux serveurs de fichiers. Peut-être allez-vous y trouver des centaines de milliers de fichiers, plus ou moins obsolètes, répartis sur plusieurs partages, dans des dossiers plus ou moins parlant. Lesquels de ces fichiers sont à jour ? Lesquels sont obsolètes ?
Le Réseau Social d'Entreprise apporte une nouvelle couche à la problématique de la recherche d'entreprise. Il apporte les flux d'échange (ce qui n'existait pas jusque-là), les profils des collaborateurs, ainsi que d'autres informations qu'on pouvait aussi trouver dans d'autres sites SharePoint (comme les billets de blog, etc.).
Connaître la cartographie des sources d’informations
Le tour d'horizon n'est pas terminé : il y a encore les informations de l'annuaire d'entreprise, les mails des collaborateurs, qui contiennent une grande partie de l'information. Ce sujet est vaste et large et il dépasse largement le simple choix d'un outil.
Une chose est sûre : la définition du périmètre de recherche du moteur d’entreprise global est cruciale à la fois pour connaître l’objectif que l’on donne au moteur d’entreprise, mais aussi pour éviter de partir dans une impasse fonctionnelle et technique.
Répondre à cette question « où le moteur d’entreprise doit-il chercher ? », qui avait l’air si simple au départ, est décidément une chose complexe.
Si votre réponse devient « Le moteur de recherche doit chercher partout, sauf …. », il faut définir cette zone d’exception, autrement dit, il faut répondre à la question initiale.
Définir le périmètre de recherche d’un moteur d’entreprise nécessite donc d’avoir une connaissance macro des sources d’informations de l’entreprise, au travers d’une cartographie complète et une idée claire de ce qu’on veut apporter comme service aux employés. Vaste sujet.
MOTEUR & CONFIDENTIALITE
On peut se dire que personne n’a rien à cacher, il y a bien sûr des sujets dans l’entreprise qui sont confidentiels, comme la préparation de nouvelles offres commerciales ou de nouveaux produits.
Le moteur global : une autoroute vers vos données d’entreprises
Mettre en place un (vrai) moteur de recherche d’entreprise va forcément changer l’approche que vous avez de la sécurité des informations au sein de l’entreprise.
Sans moteur de recherche, les sources d’information et de documents en ligne ne sont pas publiquement « exposés » aux utilisateurs : il n’y a pas cette autoroute qui vous y conduit directement.
Avec un moteur de recherche global d’entreprise, c’est bien différent. Même sans chercher à percer les secrets de l’entreprise, au détour d’une recherche banale, un contenu confidentiel mal protégé peut être proposé à un utilisateur au détour d’une recherche même innocente.
Ne pas disposer de moteur d’entreprise ne protège pas les secrets de l’entreprise s’ils sont mal protégés, mais cela évite au moins de tracer un boulevard aux petits curieux qui s’y intéresseraient de trop près.
Certes, dans tous les cas, les documents mal sécurisés restent non « protégés », mais au moins sans un moteur d’entreprise global, ils ne sont pas « exposés ».
Quel degré de confiance dans la confidentialité ?
Un moteur de recherche s’appuie bien évidemment sur des mécanismes de sécurité, qui permettent de ne remonter à l’utilisateur que les contenus pour lesquels il dispose des droits de lecture suffisants.
Encore faut-il que la technologie mise en place du côté de la source d’information le permette (j’en parle dans un des points suivants, avec le SSO).
Par exemple, les différentes versions de moteur de recherche de SharePoint s’appuient sur les mécanismes de sécurité de SharePoint. Les administrateurs des sites documentaires ont la responsabilité de positionner eux-mêmes les droits sur leurs collections, sites, listes, ou documents.
Mais que se passe-t-il si le responsable d’une source de contenus gère mal (ou pas du tout) cette confidentialité, en omettant par exemple de restreindre des droits d’accès, laissant toute personne accéder aux contenus ? Car hélas, cette situation arrive très souvent dans les grandes entreprises pour plusieurs raisons.
Selon moi, la mise en œuvre d’un moteur de recherche d’entreprise a donc en prérequis un audit de la qualité globale de sécurité des ressources que l’on souhaite indexer.
L’exercice est forcément complexe, mais à l’aide de quelques outils de gouvernance il est possible d’expertiser quelques sources que l’on sait sensibles, pour vérifier si les droits d’accès y sont globalement bien positionnés.
Indexation d’autorité ou déclarative ?
Il y a donc un positionnement clair à prendre vis à vis des données de l'entreprise quand on cherche à mettre en place un moteur de recherche qui soit "global" à toute l'entreprise. A cause des risques décrits ci-dessus, doit-on le faire de manière concerté avec les responsables des contenus, ou pas ?
Pour SharePoint, doit-on décider d’autorité que pour le bien de l’entreprise, tous les sites SharePoint seront forcément indexés par défaut par le méta moteur de recherche ? Le risque, je le répète, est de mettre en visibilité des informations ou documents confidentiels mal protégés par leurs auteurs.
Au contraire, pour éviter tout risque en termes de confidentialité, doit-on laisser le libre choix aux administrateurs des sites SharePoint de les ouvrir au moteur de recherche d'entreprise au travers d’une démarche volontaire de référencement (j’en parlerai par la suite) ? Le risque est qu’ils ne fassent jamais cette démarche, ce qui réduirait à néant votre ambition d’un moteur de recherche global d’entreprises.
Ce seul aspect confidentialité d’un moteur de recherche d’entreprise à lui seul est un des challenges à relever.
L’importance du SSO dans la recherche globale
Dans le chapitre « Culture intranet », je vous expliquais ce qu’était le SSO, le principe de reconnaissance de l’utilisateur par toute application Web lors de sa connexion unique sur le réseau de l’entreprise.
J’expliquais également que toutes les entreprises n’avaient pas encore généralisé ce type d’authentification.
Si vous aviez une grande ambition pour votre moteur de recherche et que vous souhaitez que votre moteur d’entreprise puisse rechercher quelques informations dans données métier, l’absence de SSO risque de poser problème pour ce type d’application.
Montrer que ce à quoi on a droit
Un autre aspect du moteur de recherche est la posture que l’on doit avoir vis à vis de l’affichage des résultats de recherche.
Deux postures sont possibles. La première est de faire une recherche dans toutes les sources de contenu et d’afficher les résultats quels que soient les droits d’accès de l’utilisateur à ces contenus. Ce n’est qu’en cliquant sur le lien, que l’application vérifie les droits sur ce contenu et affiche si besoin un message d’erreur. Ce comportement est assez fréquent pour les applications ne bénéficiant pas de SSO.
La seconde posture est au contraire de ne montrer que les contenus auxquels l’utilisateur connecté a le droit d’accéder. Le prérequis est que les applications qui contiennent ces données bénéficient du SSO.
Dans le premier cas, les inconvénients sont nombreux : pollution des résultats (avec des éléments qui ne concernent pas forcément l’utilisateur), frustration (interdiction d’accès en cliquant) et faille de sécurité (même sans pouvoir ouvrir le contenu, le seul fait d’afficher son existence est une faille.
EndFragment