Création d’une page de recherche JavaScript hébergée par un API de recherche
Search API 8.0.457+ (mars 2015)
Pour créer une page de recherche JavaScript qui sera hébergée par l’API de recherche
-
Veillez à ce que l’API de recherche v8.0.457+ soit installé dans un serveur et configuré afin de se connecter à un serveur Coveo Enterprise Search (voir Installation de l'API Coveo Search, Personnalisation et démarrage de l’API Coveo Search, et Identifying the REST Search API Version).
-
Configurez les permissions searchPageDesigners de l'API de recherche :
Vous devez configurer qui peut créer et modifier des pages de recherche hébergées par l’API de recherche.
-
À l’aide d’un compte d’administrateur, connectez-vous au serveur dans lequel l’API de recherche est installé.
-
À l’aide d’un éditeur de texte, ouvrez le fichier de configuration de l’API de recherche [Search_API_Path]\config.yml (par défaut C:\Program Files\Coveo Search API 8\config.yml).
-
Dans le fichier, veillez à ce que windowsAuthentication ou basicAuthentication, ainsi que les sections admin soient configurées dans le fichier :
-
Lorsque les utilisateurs sont authentifiés en tant qu’utilisateurs Active Directory :
Ajoutez une section windowsAuthentication dans laquelle la valeur de provider correspond au nom du fournisseur de sécurité Coveo Enterprise Search (CES) (par défaut Active Directory).
Dans la section admin :
-
La valeur de provider doit être Windows pour indiquer que les utilisateurs sont authentifiés avec la méthode windowsAuthentication.
-
La section searchPageDesigners détermine qui peut créer et modifier des pages de recherche hébergées par l’API de recherche.
Exemple : Dans la configuration suivante, seuls MYDOMAIN\username3 et les membres du groupe Administrators peuvent créer et modifier des pages de recherche.
windowsAuthentication: enabled: true provider: Active Directory admin: enabled: true provider: Windows groups: - name: Administrators members: ["MYDOMAIN\\username1","MYDOMAIN\\username2"] searchPageDesigners: - MYDOMAIN\username3 - Administrators
OU
-
-
Lorsque des utilisateurs ne sont pas authentifiés :
Ajoutez une section basicAuthentication pour plutôt définir des utilisateurs dans le fichier de configuration de l’API de recherche. Vous devez inclure un paramètre provider avec un nom de fournisseur de sécurité CES en tant que valeur (tel que Active Directory), mais ce fournisseur de sécurité n’est pas utilisé pour la section admin.
Dans la section admin :
-
La valeur de provider doit être Basic pour indiquer que les utilisateurs sont authentifiés avec la méthode basicAuthentication.
-
La section users définit chaque utilisateur et le mot de passe associé BCrypt hash.
Vous devez choisir le pour chaque utilisateur, le chiffrer avec un outil BCrypt, copier le hachage BCrypt dans la section, et communiquer le mot de passe à chaque utilisateur.
Note : Vous pouvez trouver des outils BCrypt en ligne (tel que BCrypt Calculator) pour chiffrer et tester des hachages chiffrés contre des mots de passe.
Exemple : Dans la configuration suivante, seuls les membres du groupe MyDesigners (username2 et username3) peuvent créer et modifier des pages de recherche hébergées par l’API de recherche.
basicAuthentication: enabled: true provider: Active Directory admin: enabled: true provider: Basic users: - name: username1 hash: $2a$04$DqADemxWjVVbBaWrR4/c0OTwPDXI3aXpDlGllLu0P8E1akMFJmkPm - name: username2 hash: $2a$04$kZsiWWieKKAHJA1K06OB4.reFSbYB3N9XEuGo938ly7qR/LM1.17W - name: username3 hash: $2b$343feNiWVeKKAsKDu6d$fwbphYDS.6tIgGj84n00fD9lsdsf8924d3bJ administrators: - username1 groups: - name: MyDesigners members: ["username2", "username3"] searchPageDesigners: - MyDesigners
-
Important : La syntaxe dans le fichier YAML config.yml est pointilleuse :
-
Le respect de l'indentation est important. Un niveau d’indentation doit être deux espaces, pas une tabulation (la présence d’un ou de plusieurs caractères de tabulation dans le fichier empêchera le service de l’API de recherche de démarrer!). Certains éditeurs de texte peuvent insérer automatiquement des tabulations en ajoutant des lignes. Si possible, configurer votre éditeur de texte pour qu’il montre tous les caractères minimise les risques de créer un fichier de configuration invalide.
-
En spécifiant des utilisateurs de Windows :
-
Le nom du domaine ou de l’ordinateur DOIT ÊTRE en lettres majuscules (ex. : MYCOMPANY/myusername).
-
En spécifiant un utilisateur dans un tableau, le nom d’utilisateur doit être entre guillemets et une barre oblique inversée (\) doit être en séquence d’échappement avec une autre barre oblique inversée (ex. : ["MYDOMAIN\\username1","MYDOMAIN\\username2"]).
-
En spécifiant un seul utilisateur, vous n’avez pas besoin de guillemets et ne devez pas mettre les barres obliques inversées en séquence d’échappement (ex. : MYDOMAIN\username3).
-
-
Les spécifications complètes du fichier config.yml sont disponibles à partir du site Coveo Developers (voir Windows Service Configuration File).
-
-
Enregistrez le fichier config.yml.
-
Redémarrez le service Coveo Search API pour les modifications prennent effet :
-
Dans la fenêtre Services de Windows, cliquez avec le bouton droit de la souris sur Coveo Search API, puis sélectionnez Restart (voir How to Access Services Window in Windows XP, Windows 7 & 8).
-
Veillez à ce que le service Coveo Search API ne s’interrompe pas immédiatement. Si c’est le cas, votre fichier config.yml n'est pas valide. Vous devez identifier et corriger les erreurs de syntaxe.
-
-
-
Dans un navigateur, pour commencer le processus de création pour la page de recherche par défaut, entrez l’URL du serveur de l’API de recherche avec le port et sans nom de chemin d’accès.
Exemples :
-
Lorsque l'API Coveo Search est déployé dans un ordinateur dont le nom d'hôte est search, l'URL qui utilise le port par défaut (8080) serait :
http://search.mycompany.com:8080 -
Lorsque le navigateur est exécuté sur le serveur où l'API Coveo Search est installé, vous pouvez utiliser :
http://localhost:8080
Note : Vous pouvez modifier le port utilisé par l’API de recherche Coveo en établissant l’attribut de port dans la section http du fichier config.yml (voir The http Section).
OU
Pour créer une page de recherche avec un nom personnalisé, entrez l’URL du serveur d’API de recherche, suivi par le nom désiré dans le chemin d’accès.
Exemple : Lorsque l'API Coveo Search est déployé dans un ordinateur dont le nom d'hôte est search, l'URL qui utilise le port par défaut (8080) serait :
http://search.mycompany.com:8080/MyAweSomeSearchPagequi va créer un fichier MyAweSomeSearchPage.html.
-
-
Avec un navigateur qui ne prend pas en charge l’authentification intégrée ou lorsque l’authentification de base est configurée pour les permissions searchPageDesigners, dans la boîte de dialogue de connexion du navigateur, entrez votre nom d’utilisateur et votre mot de passe.
Si vos paramètres de connexion ne sont pas reconnus, contactez votre administrateur Search API pour confirmer que vous êtes autorisé à créer et modifier des pages de recherche et la méthode d’authentification qui est utilisée.
-
Dans la boîte de dialogue This Search Page Is not Configured Yet, cliquez sur Click Here to Start pour lancer le processus de création de pages de recherche.
Note : Si vous obtenez le message suivant, l’utilisateur avec lequel vous êtes connecté n’a pas les permissions pour créer une page de recherche (voir l'étape 2).
Seems like you don't have access to create a page.
-
Dans la boîte de dialogue Setup Search Page :
-
Vous pouvez désactiver un ou plusieurs onglets suggérés correspondant au contenu d’index retrouvé.
-
Facultativement, cliquez sur More Tabs, lorsque vous souhaitez immédiatement ajouter des onglets pour d’autres types de sources qui ne sont pas encore indexés.
Note : Les onglets ajoutés ne contiendront aucun résultat avant que vous n’indexiez le contenu du type correspondant.
Vous pouvez toujours ajouter ou retirer des onglets plus tard à l’aide de l’Éditeur d’interface (voir Making Basic JavaScript Search Page Customization With the Interface Editor).
-
Cliquez sur Create Page.
La page de recherche apparaît.
Les fichiers de la page de recherche sont enregistrés dans le serveur de l’API de recherche dans le dossier [Search_API_Path]\pages\ (par défaut C:\Program Files\Coveo Search API 8\pages\). Le nom du fichier de la page de recherche par défaut est default.html.
-
Prochaines étapes?
Utilisez l’Éditeur d’interface pour personnaliser la page (voir Accès à l'Éditeur d'interface de recherche JavaScript pour une page hébergée d'API Search).
L’Éditeur d’interface comprend également Coveo for Salesforce et son utilisation est documentée dans l’aide en ligne de Coveo for Salesforce (voir JavaScript Search Interface Editor Overview).