Partager via


Configurer le service ServiceNow pour l’ingestion du connecteur De connaissances ServiceNow

Le connecteur ServiceNow Knowledge Microsoft 365 Copilot permet aux organisations d’indexer des articles de la base de connaissances ServiceNow dans des expériences de Microsoft 365 Copilot et de recherche. Cet article fournit des informations sur les étapes de configuration que les administrateurs ServiceNow doivent effectuer avant que votre organization déploie le connecteur ServiceNow Knowledge.

Pour plus d’informations sur le déploiement du connecteur, consultez Déployer le connecteur ServiceNow Knowledge.

Liste de contrôle de configuration

Les listes de vérification suivantes répertorient les étapes impliquées dans la configuration de l’environnement et la configuration des prérequis du connecteur.

Configurer l’environnement

Tâche Role
Identifier l’URL instance Administrateur ServiceNow
Identifier la configuration du portail Administrateur ServiceNow
Définir le mappage d’attributs Administrateur ServiceNow
Rechercher les scripts avancés et les autorisations hiérarchiques Administrateur ServiceNow

Configurer les prérequis

Tâche Role
Créer un compte de service et configurer des autorisations Administrateur ServiceNow
Identifier le nombre d’éléments pour l’ingestion Administrateur ServiceNow
Configurer l’API REST Administrateur ServiceNow
Configurer des autorisations hiérarchiques (préversion) Administrateur ServiceNow
Ajouter une adresse IP Microsoft 365 à la liste d’autorisation Administrateur ServiceNow/Administrateur réseau
Résoudre les problèmes liés à la configuration de l’authentification unique Administrateur ServiceNow

Configurer l’environnement ServiceNow

Les sections suivantes décrivent les tâches d’administration pour configurer l’environnement ServiceNow afin d’activer et d’optimiser la connexion.

Identifier l’URL de instance ServiceNow

L’URL instance ServiceNow a généralement le format suivant :

https://<your-organization-name>.service-now.com

Pour vérifier l’URL de votre instance ServiceNow, case activée le tableau de bord d’administration ServiceNow ou l’URL de connexion utilisée par votre organization.

Si vous avez une URL personnalisée :

  • Dans votre instance ServiceNow, accédez à Toutes les>URL>personnalisées.

Identifier la configuration du portail ServiceNow

Par défaut, lorsque les utilisateurs sélectionnent des liens générés par Copilot pour le contenu ServiceNow, les URL suivent le format standard :

https://<your-organization-name>.service-now.com/kb_view.do?sys_kb_id=bf1ab5ee47c31e90af178339736d

Si votre organization utilise une URL différente, vous pouvez personnaliser l’URL lorsque vous déployez le connecteur. Pour plus d’informations, consultez Personnaliser des valeurs pour certaines propriétés de schéma.

Définir le mappage d’attributs ServiceNow

Par défaut, Microsoft Entra ID mappe les identités de votre source de données en vérifiant si l’ID d’e-mail des utilisateurs ServiceNow correspond au nom d’utilisateur principal (UPN) ou à l’attribut Mail dans Microsoft Entra ID.

Si ce mappage par défaut ne répond pas aux besoins de votre organization, vous pouvez définir une formule de mappage personnalisée. Pour plus d’informations, consultez Mapper vos identités d’ID non Entra.

Rechercher des scripts avancés et des autorisations hiérarchiques dans ServiceNow

Déterminez si les articles de connaissances de votre environnement ServiceNow ont les paramètres suivants :

  • Scripts avancés activés dans les critères utilisateur
  • Les autorisations hiérarchiques sont configurées

Ces paramètres peuvent affecter le comportement d’indexation et le contrôle d’accès lorsque du contenu est exposé dans des expériences Microsoft 365 comme Copilot.

Pour déterminer si des scripts avancés sont activés pour les critères utilisateur , exécutez l’appel d’API suivant :

<ServiceNowURL>/api/now/table/user_criteria?advanced=true&sysparm_limit=1

Si votre instance utilise des critères utilisateur avancés basés sur des scripts, sélectionnez Flux avancé lorsque vous déployez le connecteur. Pour plus d’informations, consultez Choisir un flux en fonction de critères utilisateur.

Que sont les autorisations hiérarchiques ?

ServiceNow Knowledge prend en charge la définition d’autorisations au niveau base de connaissances (parent) et au niveau de l’article individuel (enfant). Ces autorisations sont évaluées ensemble pour déterminer si un utilisateur a accès à un article. Ce modèle est appelé autorisations hiérarchiques.

Les autorisations hiérarchiques sont prises en charge pour le connecteur ServiceNow Knowledge (préversion uniquement). Cette fonctionnalité n’est pas disponible dans les clouds gouvernementaux ou souverains, ni dans les forêts dédiées dans les environnements multilocataires. Pour plus d’informations, consultez Configurer des autorisations hiérarchiques (préversion).

Configurer les prérequis du connecteur

Les sections suivantes décrivent les étapes préalables à suivre avant de déployer le connecteur ServiceNow.

Créer un compte de service et configurer des autorisations pour indexer des éléments

Pour vous connecter à ServiceNow et autoriser le connecteur ServiceNow Knowledge à mettre à jour des éléments régulièrement, vous avez besoin d’un compte de service avec accès en lecture à des enregistrements de table ServiceNow spécifiques. Le tableau suivant répertorie les enregistrements de table requis.

Fonctionnalité Accès en lecture requis aux tables Description
Indexer les articles de connaissances disponibles pour tout le monde kb_knowledge Pour les articles sur l’analyse des connaissances
Propriétés de table étendues d’index sys_db_object Lire les détails de la table étendue pour les modèles
sys_dictionary Lire les propriétés de table étendues et les modèles d’analyse
sys_properties Lire les propriétés pour évaluer les autorisations
sys_attachment Pour analyser les pièces jointes dans les articles de connaissances
kb_feedback Pour les commentaires d’analyse sur les articles de connaissances
Indexer et prendre en charge les autorisations des critères utilisateur kb_uc_can_read_mtom Qui peut lire cette base de connaissances
kb_uc_can_contribute_mtom Qui peut contribuer à cette base de connaissances
kb_uc_cannot_read_mtom Qui ne peut pas lire cette base de connaissances
kb_uc_cannot_contribute_mtom Qui ne peut pas contribuer à cette base de connaissances
sys_user Lire la table utilisateur
sys_user_has_role Lire les informations de rôle des utilisateurs
sys_user_grmember** Lire l’appartenance aux groupes des utilisateurs
user_criteria Lire les autorisations des critères utilisateur
kb_knowledge_base Lire les informations base de connaissances
sys_user_group Lire les segments de groupe d’utilisateurs
sys_user_role Lire les rôles d’utilisateur
cmn_location** Lire les informations d’emplacement
cmn_department** Lire les informations du service
core_company** Lire les attributs de l’entreprise

** L’accès à ces tables n’est nécessaire que lorsque vous choisissez le flux simple. Si vous choisissez le flux avancé pour lire les critères utilisateur, vous n’avez pas besoin d’accéder à ces tables.

Vous pouvez créer et attribuer un rôle pour le compte de service que vous utilisez pour vous connecter à Recherche Microsoft. Pour plus d’informations, consultez Attribuer un rôle à un utilisateur. Vous pouvez attribuer un accès en lecture aux tables au rôle que vous créez.

Pour plus d’informations sur la création d’un utilisateur, l’attribution d’un rôle et l’octroi d’autorisations de lecture sur tous les enregistrements de table applicables, consultez Accorder l’accès à une table à un utilisateur dans ServiceNow.

Si le compte de service ne dispose pas des autorisations requises, ou si les autorisations au niveau des lignes ou des champs sont restreintes, des éléments spécifiques sont exclus de l’indexation côté Microsoft.

Remarque

Ne vous appliquez snc_read_only pas explicitement au compte de service. Ce rôle refuse toute action d’écriture à toute table à laquelle l’utilisateur a accès. Le compte doit écrire un jeton et d’autres informations relatives à l’authentification dans certaines tables. Étant donné que les jetons sont régulièrement actualisés, ce compte ne peut pas être créé en lecture seule après l’authentification initiale. Le compte de service a besoin d’un accès en écriture à la table pour l’authentification oauth_credential .

Si le compte de service n’a pas accès à la table de critères utilisateur complète, un comportement incohérent lié aux autorisations utilisateur, y compris le surpartage de contenu involontaire, peut se produire.

Identifier le nombre d’éléments pour l’ingestion

Le filtre par défaut suivant est appliqué pendant l’indexation. Si vous devez apporter des modifications, modifiez la chaîne de requête pendant la configuration du connecteur. Pour plus d’informations, consultez Personnaliser la chaîne de requête.

active=true^workflow_state=published

Pour vérifier le nombre d’éléments attendu pour l’ingestion :

  1. Accédez à l’URL suivante : https://<instance-name>.service-now.com/api/now/table/kb_knowledge?sysparm_fields=sys_id&workflow_state=published. Cette URL ouvre la liste de sys_ids.

    Remarque

    Si vous modifiez la chaîne de requête par défaut pour l’indexation des articles sélectionnés, utilisez l’URL correspondante pour refléter ces conditions de requête.

  2. Ouvrez Outils de développement dans la même fenêtre et tapez le code suivant dans la fenêtre de console :

        fetch('<<same URL as in 1>>')
        .then(res => res.json())
        .then(data => console.log("Count of sys_ids:", data.result.length))
        .catch(err => console.error(err));
    
  3. Notez le nombre d’éléments.

Lorsque le connecteur est configuré et que la synchronisation des éléments est terminée, vous pouvez case activée le nombre d’éléments indexés par rapport à ce nombre attendu pour vérifier que tous les articles sont indexés. Pour plus d’informations, consultez Afficher les statistiques de connexion.

Configurer l’API REST

Pour permettre au connecteur d’extraire des critères utilisateur avancés, créez une API REST scriptée dans votre instance ServiceNow.

  • Élevez votre rôle dans ServiceNow à security_admin.

Créer un contrôle d’accès :

  1. Dans ServiceNow, accédez à Toutes les > Access Control de sécurité > système (ACL).
  2. Choisissez Nouveau pour créer une liste de contrôle d’accès.
  3. Définissez les valeurs suivantes :
    • Type : REST_Endpoint
    • Opération : Execute
    • Nom : Microsoft Copilot
    • Rôle : admin(ou le même rôle attribué au compte d’analyse)
  4. Choose Submit.

Créez l’API REST scriptée :

  1. Accédez à Toutes les > API REST scriptées des services >> web système.
  2. Sélectionnez Nouveau.
  3. Entrez les informations suivantes :
    • Nom : Microsoft Copilot
    • ID d’API : microsoft_copilot
  4. Choose Submit.
  5. Dans la page de liste de l’API REST scriptée, choisissez Microsoft Copilot.
  6. Définissez listes de contrôle d’accès par défautsur Microsoft Copilot. Pour éviter tout problème d’autorisation, ajoutez également la liste de contrôle d’accès par défaut EXTERNE REST scriptée .

Ajoutez une ressource à l’API :

  1. Sous l’onglet Ressources , choisissez Nouveau.

  2. Renseignez les détails :

    • Nom : GetAllUserCriteria
    • Chemin d’accès relatif : /user_criteria
    • Script : collez le code suivant :
    (function execute (/*RESTAPIRequest*/ request, /*RESTAPIResponse*/ response) {
        var queryParams = request.queryParams;
        var user = new String(queryParams.user);
        return (new sn_uc.UserCriteriaLoader()).getAllUserCriteria(user);
    })(request, response);
    
  3. Vérifiez que les deux éléments suivants sont cochés :

    • Authentification requise
    • Nécessite une autorisation de liste de contrôle d’accès
  4. Vérifiez que les listes de contrôle d’accès sont définies sur Microsoft Copilot. Pour éviter tout problème d’autorisation, ajoutez également la liste de contrôle d’accès par défaut EXTERNE REST scriptée .

  5. Sélectionnez Update (Mettre à jour).

Pour vérifier l’installation :

  1. Vérifiez que le chemin d’accès à la ressource est le suivant : /api/<API Namespace>/microsoft_copilot/user_criteria.
  2. Choisissez Mettre à jour pour enregistrer la configuration.

L’administrateur Microsoft 365 entre dans l’espace de noms d’API lorsqu’il déploie le connecteur ServiceNow Knowledge. Dans l’exemple suivant, l’espace de noms d’API est abcdef.

/api/abcdef/microsoft_copilot/user_criteria

Configurer des autorisations hiérarchiques (préversion)

Les autorisations hiérarchiques permettent au connecteur ServiceNow Knowledge d’évaluer les autorisations utilisateur pour n’importe quel article de connaissances ServiceNow. Le connecteur évalue les critères utilisateur appliqués au niveau de l’base de connaissances (parent) et de l’article de connaissances (enfant) en fonction des règles utilisées par ServiceNow. Pour plus d’informations sur la façon dont ServiceNow évalue l’autorisation d’article, consultez Gestion de l’accès aux bases de connaissances et articles de connaissances.

Pour configurer des autorisations hiérarchiques :

  • Pendant le déploiement du connecteur, pour Sélectionner en fonction de vos critères utilisateur configurés dans ServiceNow, choisissez Avancé. Si vous avez choisi Simple lorsque vous avez configuré le connecteur, mettez à jour votre connecteur existant pour utiliser Avancé.

    Remarque

    Lorsque vous choisissez Avancé, vous devez configurer l’API REST scriptée dans ServiceNow dans votre instance ServiceNow **lorsque vous sélectionnez « Avancé ». Suivez les étapes décrites dans Configurer l’API REST.

  • Fournir un accès en lecture à la sys_properties table au compte de service utilisé pour la configuration du connecteur. Pour plus d’informations, consultez Accorder l’accès à une table à un compte de service dans ServiceNow.

    Remarque

  • Utilisez * dans le nom du champ pour appliquer l’accès à tous les champs de la table.

En interne, vous avez besoin d’un accès en lecture seule au champ nom et valeur pour les propriétés suivantes, qui sont essentielles pour l’évaluation de la liste de contrôle d’accès hiérarchique :

  • glide.knowman.apply_article_read_criteria
  • glide.knowman.block_access_with_no_user_criteria

Si vous ne souhaitez pas fournir l’accès à tous les champs de la sys_properties table, pour restreindre l’accès au compte uniquement aux champs obligatoires :

  1. Créez une liste de contrôle d’accès et accordez l’accès au niveau des lignes à la sys_properties table uniquement pour les propriétés spécifiques que vous souhaitez lire. Fournissez les valeurs suivantes :

    1. Type : enregistrement
    2. Application : Global
    3. Actif : activé
    4. Type de décision : autoriser si
    5. Administration remplacements : coché
    6. Opération : lecture
    7. Nom : Propriété système [sys_properties]. Conservez la cellule de champ adjacente en tant que --None--.
    8. S’applique à :
      1. Sélectionnez Nom, opérateur is, et indiquez le nom du champ : glide.knowman.apply_article_read_criteria.
      2. Sélectionnez l’opérateur OR .
      3. Dans la deuxième ligne, sélectionnez Nom, opérateur est, puis indiquez le nom du champ : glide.knowman.block_access_with_no_user_criteria.
    9. Sous Conditions > requiert des rôles, sélectionnez le rôle pour lequel vous souhaitez autoriser cette liste de contrôle d’accès, puis créez la liste de contrôle d’accès.
  2. Créez une autre liste de contrôle d’accès et accordez l’accès au champ Nom de la propriété. Fournissez les valeurs suivantes :

    1. Type : enregistrement
    2. Application : Global
    3. Actif : activé
    4. Type de décision : autoriser si
    5. Administration remplacements : coché
    6. Opération : lecture
    7. Nom : Propriété système [sys_properties]. Dans le champ adjacent, sélectionnez Nom.
    8. S’applique à :
      1. Sélectionnez Nom, opérateur is, et indiquez le nom du champ : glide.knowman.apply_article_read_criteria. 1. Sélectionnez l’opérateur OR . 1. Dans la deuxième ligne, sélectionnez Nom, opérateur is, et indiquez le nom du champ : glide.knowman.block_access_with_no_user_criteria.
    9. Sous Conditions > requiert des rôles, sélectionnez le rôle pour lequel vous souhaitez autoriser cette liste de contrôle d’accès, puis créez la liste de contrôle d’accès.
  3. Créez une autre liste de contrôle d’accès et accordez l’accès au champ Valeur pour la propriété . Fournissez les valeurs suivantes :

    1. Type : enregistrement
    2. Application : Global
    3. Actif : activé
    4. Type de décision : autoriser si
    5. Administration remplacements : coché
    6. Opération : lecture
    7. Nom : Propriété système [sys_properties]. Dans le champ adjacent, sélectionnez Valeur.
    8. S’applique à :
      1. Sélectionnez Nom, opérateur is, et indiquez le nom du champ : glide.knowman.apply_article_read_criteria. 1. Sélectionnez l’opérateur OR . 1. Dans la deuxième ligne, sélectionnez Nom, opérateur is, et indiquez le nom du champ : glide.knowman.block_access_with_no_user_criteria.
    9. Sous Conditions > requiert des rôles, sélectionnez le rôle pour lequel vous souhaitez autoriser cette liste de contrôle d’accès, puis créez la liste de contrôle d’accès.

Les trois listes de contrôle d’accès que vous avez créées vous permettent de limiter le compte de service aux seules autorisations nécessaires. Cette restriction lui permet d’extraire les détails requis pour déterminer le flux d’évaluation des autorisations dans votre instance ServiceNow.

Ajouter une adresse IP Microsoft 365 à la liste d’autorisation

Si des configurations réseau, telles que des paramètres de pare-feu ou de proxy, bloquent l’accès à ServiceNow, veillez à ajouter les adresses IP répertoriées dans règles de pare-feu IP à la liste d’autorisation.

Pour plus d’informations sur les contrôles propres à ServiceNow, consultez Access Control d’adresse IP.

Résoudre les problèmes de configuration du connecteur avec la configuration de l’authentification unique ServiceNow

Si votre instance ServiceNow est configuré avec l’authentification unique (SSO), vous pouvez rencontrer les problèmes suivants lors de la configuration du connecteur :

  • Pendant le processus OAuth, une fenêtre de déconnexion réussie peut s’afficher sans demander d’informations d’identification ServiceNow.
  • Les informations d’identification de l’administrateur Microsoft 365 peuvent être utilisées pour autoriser la connexion ServiceNow au lieu du compte de service prévu.

Par défaut, ServiceNow tente de se connecter à l’aide des informations d’identification d’administrateur Microsoft 365 via l’authentification unique à partir d’une connexion de navigateur. Ce comportement peut entraîner l’échec de la connexion et entraîner le message Déconnexion réussie .

Pour résoudre ces problèmes :

  1. Ouvrez une fenêtre de navigateur privé et connectez-vous à l’aide des informations d’identification du compte de service ServiceNow.

  2. Dans un nouvel onglet, connectez-vous au Centre d’administration Microsoft 365 à l’aide des informations d’identification d’administrateur Microsoft 365.

    Remarque

    La connexion initiale peut être par défaut ServiceNow SSO. Si cela se produit, basculez vers les informations d’identification correctes.

  3. Réessayez la configuration OAuth. Vous devez maintenant voir une fenêtre vous invitant à autoriser la connexion à l’aide des informations d’identification du compte de service.

Étape suivante