Problèmes de connectivité de l’utilisateur de Serveur MID

  • Rversion finale: Yokohama
  • Mis à jour 30 janv. 2025
  • 17 minutes de lecture
  • L’instance écrit les problèmes impliquant les connexions des utilisateurs de Serveur MID et la connectivité réseau dans la table Problème de Serveur MID [ecc_agent_issue] et crée des événements que vous pouvez utiliser dans des scripts personnalisés ou pour envoyer des notifications par e-mail.

    Les enregistrements de la table Problème de Serveur MID [ecc_agent_issue] peuvent fournir un aperçu des raisons pour lesquelles votre utilisateur de Serveur MID ne peut pas se connecter ou pourquoi un Serveur MID ne peut pas se connecter à l’instance. Le système affiche les enregistrements des problèmes de connectivité dans cette table, qui incluent des messages d’erreur informatifs suggérant des causes possibles. Par défaut, une tâche planifiée appelée MIDUserConnectivity s’exécute toutes les quatre heures et lance l’include de script MIDUserConnectivity pour évaluer l’activité de connexion au serveur MID. Les enregistrements de la table Problèmes de Serveur MID [ecc_agent_issue] reflètent l’état des tentatives de connexion et de la connectivité du Serveur MID au moment où la tâche planifiée s’exécute.

    Du point de vue de l’instance, le MID Server est en panne lorsque :
    • Échec de l’authentification utilisateur
    • L’autorisation utilisateur échoue.
    • Des problèmes réseau empêchent Serveur MID d’établir une connexion TCP/IP.
    Remarque :
    Pour associer un utilisateur à un Serveur MID, accédez au fichier servicenow/<nom de Serveur MID>/agent/config.xml et entrez les informations d’identification de l’utilisateur dans les paramètres mid.instance.username et mid.instance.password . Assurez-vous de redémarrer le serveur MID pour activer vos changements.

    Façon dont les problèmes sont consignés

    Les échecs d’authentification utilisateur et les problèmes d’autorisation sont consignés automatiquement dans le fichier journal de l’agent de Serveur MID. Le message pour les deux est le même : l’utilisateur ne peut pas être authentifié ou il n’a pas les rôles appropriés. Si le problème est lié à l’autorisation, le fichier de agent.log affiche la liste des rôles manquants.

    Lorsque le débogage est activé, les problèmes de Serveur MID sont consignés dans le journal système (syslog) et peuvent être affichés sous forme de résumé ou détaillé . Vous pouvez également modifier l’intervalle d’échantillonnage de 4 heures par défaut à un intervalle plus court pour suivre vos efforts de rattrapage. Pour obtenir des instructions sur l’activation et la configuration du débogage pour les problèmes des utilisateurs de Serveur MID, reportez-vous à la section Tester les efforts de rattrapage pour les problèmes de connectivité de l’utilisateur de Serveur MID.

    Données fournies

    Lorsque l’instance rencontre des problèmes de connectivité utilisateur, elle ouvre un enregistrement dans la table Problème de Serveur MID [ecc_agent_issue].
    Figure 1. Exemple de message d’erreur d’authentification utilisateur
    Exemple de message d’erreur d’authentification utilisateur
    La table Problème de Serveur MID contient les champs suivants :
    Tableau 1. Champs de problème de Serveur MID
    Champ Description
    Dernière détection Date et heure de la dernière détection du problème.
    Description brève Contenu du message généré qui spécifie un problème possible avec l’utilisateur nommé ou le serveur MID.
    Serveur MID Vide dans le communiqué de Jakarta.
    Source du problème Processus qui a identifié le problème. Pour tous les problèmes liés à la connectivité de l’utilisateur du Serveur MID, la source est MIDUserConnectivity.
    État L’état actuel du problème. Les états possibles sont les suivants :
    • Nouveau : état de démarrage lorsque l’instance crée le problème.
    • Authentifié : état défini lors de la première examen du problème par l’administrateur.
    • Résolu : état de fin, défini par l’instance, indiquant que le problème a été résolu. Si la tâche planifiée ne rencontre pas le problème lors de sa nouvelle exécution, l’instance définit automatiquement cette valeur.
    Domaine Domaine associé au compte d’utilisateur de Serveur MID.
    Nombre Nombre de fois qu’un problème a été détecté. Chaque fois que la tâche planifiée s’exécute et rencontre le même problème, elle incrémente ce champ.

    Échec de l’authentification utilisateur

    Les informations d’identification que l’instance utilise pour authentifier un utilisateur de Serveur MID sont configurées dans la table Paramètres de configuration de Serveur MID [ecc_agent_config]. Si l’utilisateur du Serveur MID tente de se connecter à l’instance avec des informations d’identification non valides, l’instance rejette la connexion et écrit l’événement login.failed dans la table Événements [sysevents] pour l’utilisateur. Les administrateurs peuvent utiliser cet événement dans un script personnalisé ou dans des notifications par e-mail en cas d’échec de l’authentification.

    Remarque :
    Si l’authentification utilisateur échoue, l’autorisation utilisateur n’est pas tentée.

    Comptes d’utilisateurs associés à un serveur MID

    L’un des messages suivants dans la table Problème de Serveur MID [ecc_agent_issue] indique un échec de l’authentification pour les comptes d’utilisateurs associés à un Serveur MID :
    • Échec de l’authentification de connexion pour l’utilisateur <nom d’utilisateur> associé à 1 Serveur MID en panne. Vérifiez le mot de passe sur Serveur MID.
    • Échec de l’authentification de connexion pour l’utilisateur <nom d’utilisateur> associé à <n> MID Servers. Vérifiez le mot de passe sur les serveurs MID.
    Les conditions nécessaires pour que ces messages apparaissent sont les suivantes :
    • Le champ État de la table Serveurs MID [ecc_agent] associée au serveur MID indique que le serveur MID est en panne.
    • L’utilisateur identifié dans la table Paramètres de configuration de Serveur MID [ecc_agent_config] est l’utilisateur qu’un ou plusieurs Serveurs MID sont configurés pour utiliser pour l’authentification et l’autorisation lors de la connexion à l’instance. L’enregistrement de la table [ecc_agent_config] doit avoir les valeurs suivantes :
      • Nom du paramètre [param_name] : champ défini sur mid.instance.username.
      • Valeur [value] Champ associé au nom de l’utilisateur, correspondant au champ ID d’utilisateur [user_name] dans la table Utilisateurs [sys_user].
    • La table Événements [sysevent] contient des publications indiquant que la dernière tentative de connexion associée à l’utilisateur a échoué pendant la période planifiée. L’enregistrement créé dans la table [sysevent] contient les valeurs de champ suivantes :
      • Le champ Nom d’événement [nom] est défini sur login.failed.
      • Le champ Parm1 [parm1] est défini sur le nom de l’utilisateur.
    Remarque :
    Le champ Serveur MID [mid_server] de la table Problèmes de Serveur MID [ecc_agent_issue] est vide (=NULL).

    Comptes d’utilisateurs ayant le rôle de Serveur MID non associés à un Serveur MID

    Le message suivant s’affiche lorsqu’un utilisateur doté du rôle de mid_server qui n’est pas associé à un serveur MID ne parvient pas à s’authentifier : Échec de l’authentification de connexion pour l’utilisateur <nom d’utilisateur> avec mid_server rôle non associé à un serveur MID.

    Les conditions nécessaires pour que ce message apparaisse sont les suivantes :
    • La table Rôles d’utilisateur [sys_user_has_role] contient un enregistrement liant le sys_id associé à l’enregistrement utilisateur stocké dans la table [sys_user], avec le sys_id associé à l’enregistrement de rôle mid_server stocké dans la table [sys_user_role].
    • L’utilisateur n’est pas identifié dans la table Paramètres de configuration du Serveur MID [ecc_agent_config] comme l’utilisateur qu’un ou plusieurs Serveurs MID sont configurés pour utiliser pour l’authentification et l’autorisation lors de la connexion à l’instance.
    • La table Événements [sysevent] contient des publications indiquant que la dernière tentative de connexion associée à l’utilisateur a échoué pendant la période planifiée.
      • La table [sysevent] contient un enregistrement dont le champ Nom d’événement [name] est défini sur login.failed.
      • Le champ Parm1 [parm1] est défini sur le nom de l’utilisateur, correspondant au champ ID d’utilisateur [user_name] dans la table Utilisateurs [sys_user].
    Remarque :
    Le champ Serveur MID [mid_server] de la table Problèmes de Serveur MID [ecc_agent_issue] est vide (=NULL).

    Échec de l’autorisation utilisateur

    La vérification de l’autorisation utilisateur a lieu une fois que le Serveur MID s’est authentifié avec succès sur l’instance. Au cours de cette étape, le système s’assure que le compte d’utilisateur associé à un serveur MID dispose des rôles minimaux requis. Un service Web SOAP appelé MIDServerCheck effectue la vérification de rôle sur l’instance. Si l’utilisateur du Serveur MID dispose des rôles appropriés, la connexion est autorisée et un login événement est écrit dans la table Événements [sysevents]. Si l’utilisateur ne dispose pas des rôles appropriés, l’instance écrit un événement login.authorization.failed dans la table Événements [sysevents]. Cet événement fournit une liste des rôles manquants de l’utilisateur séparés par des virgules. Les administrateurs peuvent utiliser cet événement dans des scripts personnalisés ou dans des notifications par e-mail en cas d’échec de l’autorisation.

    L’autorisation peut échouer si un utilisateur n’a pas le rôle mid_server ou l’un des rôles SOAP importants, comme dans les cas suivants :
    • Si l’utilisateur dispose du rôle soap_script, le service Web SOAP MIDServerCheck s’exécute pour vérifier les rôles Serveur MID appropriés. Si l’utilisateur ne dispose pas du rôle mid_server ou de l’un des autres rôles SOAP, l’autorisation échoue et l’événement login.authorization.failed est créé.
    • Si l’utilisateur n’a pas le rôle soap_script, il n’est pas autorisé à lancer le service Web SOAP MIDServerCheck , qui recherche tous les rôles Serveur MID requis. L’autorisation échoue, mais l’événement login.authorization.failed n’est pas créé. Lorsque cela se produit, l’instance affiche ce message : La connectivité de l’utilisateur de Serveur MID <nom d’utilisateur> ne peut pas être détectée par l’instance.

    Utilisateurs associés à un ou plusieurs serveurs MID en panne

    L’un des messages suivants dans la table Problème de Serveur MID [ecc_agent_issue] indique un échec de l’autorisation pour les comptes d’utilisateurs associés à un serveur MID en panne :
    • Échec de l’autorisation de connexion pour l’utilisateur <nom d’utilisateur> associé à 1 serveur MID en panne. Réaffectez mid_server rôle pour accorder tous les rôles requis.
    • Échec de l’autorisation de connexion pour l’utilisateur <nom d’utilisateur> associé à <n> serveurs MID en panne. Réaffectez mid_server rôle pour accorder tous les rôles requis.
    L’include de script MIDUserConnectivity identifie les utilisateurs actifs associés à un ou plusieurs serveurs MID en panne dont la dernière tentative de connexion au cours de la période de déclaration a échoué à l’autorisation de l’utilisateur. Ce message est généré lorsque des échecs d’autorisation utilisateur sont détectés et signalés par le service Web scripté MIDServerCheck. Toutefois, les échecs d’autorisation utilisateur ne sont pas signalés pour les utilisateurs qui ne sont pas affectés au rôle soap_script. Si cela se produit, les problèmes avec l’utilisateur sont signalés par le message de connectivité réseau.
    Ce message apparaît dans la table Problème de Serveur MID [ecc_agent_issue] lorsque :
    • L’utilisateur peut avoir ou non le rôle mid_server.
    • L’utilisateur est identifié dans la table Paramètres de configuration du Serveur MID [ecc_agent_config] comme l’utilisateur qu’un ou plusieurs Serveurs MID sont configurés pour utiliser pour l’authentification et l’autorisation lors de la connexion à l’instance.
    • La table Événements [sysevent] contient des publications indiquant que la dernière tentative de connexion associée à l’utilisateur a échoué pendant la période planifiée. La table [sysevent] contient un enregistrement avec les paramètres suivants :
      • Nom d’événement [nom] : champ défini sur login.authorization.failed.
      • Champ parm1 [parm1] attaché au nom de l’utilisateur, correspondant au champ ID d’utilisateur [user_name] dans la table Utilisateurs [sys_user].
    Remarque :
    Le champ Serveur MID [mid_server] de la table Problèmes de Serveur MID [ecc_agent_issue] est vide (=NULL).

    Utilisateurs ayant le rôle approprié et non associés à un serveur MID

    Le message suivant s’affiche lorsqu’un utilisateur doté du rôle mid_server qui n’est pas associé à un serveur MID ne possède pas l’autorisation : Échec de l’autorisation de connexion pour l’utilisateur <nom d’utilisateur> avec mid_server rôle non associé à un serveur MID.

    Ce message est généré lorsque des échecs d’autorisation utilisateur sont détectés dans lesquels le compte d’utilisateur, avec le rôle mid_server, n’est pas identifié comme utilisateur de Serveur MID configuré dans la table [ecc_agent_config]. Il est possible que le compte utilisateur ait été associé à un serveur MID au moment de la panne.

    Ce message apparaît dans la table Problème de Serveur MID [ecc_agent_issue] lorsque :
    • L’utilisateur dispose du rôle mid_server. La table Rôles d’utilisateur [sys_user_has_role] comporte un enregistrement liant les sys_id associés à l’enregistrement utilisateur stocké dans la table [sys_user], au sys_id associé à l’enregistrement de rôle mid_server stocké dans la table [sys_user_role].
    • L’utilisateur n’est pas identifié dans la table Paramètres de configuration du Serveur MID [ecc_agent_config] comme l’utilisateur qu’un ou plusieurs Serveurs MID sont configurés pour utiliser pour l’authentification et l’autorisation lors de la connexion à l’instance.
    • La table Événements [sysevent] contient des publications indiquant que la dernière tentative de connexion associée à l’utilisateur a échoué pendant la période planifiée. La table [sysevent] contient un enregistrement avec les paramètres suivants :
      • Nom d’événement [nom] : champ défini sur login.authorization.failed.
      • Champ parm1 [parm1] attaché au nom de l’utilisateur, correspondant au champ ID d’utilisateur [user_name] dans la table Utilisateurs [sys_user].
    Remarque :
    Le champ Serveur MID [mid_server] de la table Problèmes de Serveur MID [ecc_agent_issue] est vide (=NULL).

    Problèmes réseau

    Un problème réseau peut empêcher le serveur MID de se connecter au serveur TCP/IP de l’instance pour démarrer une session. Dans ce cas, l’instance marque le serveur MID en panne, car l’instance n’a pas reçu l’intervalle de mise à jour du serveur MID dans l’intervalle prescrit de 5 minutes.

    Utilisateurs associés à des MID Servers en panne n’ayant pas tenté de se connecter

    L’un des messages suivants dans la table Problème de Serveur MID [ecc_agent_issue] nomme les utilisateurs associés aux Serveurs MID qui n’ont pas tenté de se connecter au cours de la période de référence :
    • L’utilisateur <nom d’utilisateur> est associé à 1 Serveur MID vers le bas. Aucune tentative de connexion au cours de la période de référence.
    • L’utilisateur <nom d’utilisateur> est associé à <n> serveurs MID en panne. Aucune tentative de connexion au cours de la période de référence.

    Le script include MIDUserConnectivity signale les utilisateurs actifs associés à des serveurs MID en panne où la connectivité réseau ne peut pas être détectée par l’instance.

    Ce message apparaît dans la table Problème de Serveur MID [ecc_agent_issue] lorsque :
    • L’utilisateur peut avoir ou non le rôle mid_server.
    • L’utilisateur est identifié dans la table Paramètres de configuration du Serveur MID [ecc_agent_config] comme étant l’utilisateur qu’un ou plusieurs Serveurs MID sont configurés pour l’authentification et l’autorisation lors de la connexion à l’instance.
    • Aucune tentative de connexion, qu’elle ait échoué ou réussi, n’a été enregistrée dans la table Événements [sysevent] pour l’utilisateur pendant la période de génération de rapports planifiée.
    Remarque :
    Le champ Serveur MID [mid_server] de la table Problèmes de Serveur MID [ecc_agent_issue] est vide (=NULL).

    Utilisateurs non associés aux MID Server n’ayant pas tenté de se connecter

    Le message suivant s’affiche lorsqu’un utilisateur disposant du rôle de mid_server qui n’est pas associé à un serveur MID n’a pas tenté de se connecter pendant l’intervalle de génération de rapports configuré : L’utilisateur <nom d’utilisateur> avec mid_server rôle n’est pas associé à un serveur MID. Aucune tentative de connexion au cours de la période de référence.

    L’include de script MIDUserConnectivity signale les utilisateurs actifs avec le rôle mid_server non associé à un serveur MID, où la connectivité ne peut pas être détectée par l’instance.

    Ce message apparaît dans la table Problème de Serveur MID [ecc_agent_issue] lorsque :
    • L’utilisateur dispose du rôle mid_server. La table Rôles d’utilisateur [sys_user_has_role] comporte un enregistrement liant les sys_id associés à l’enregistrement utilisateur stocké dans la table [sys_user], au sys_id associé à l’enregistrement de rôle mid_server stocké dans la table [sys_user_role].
    • L’utilisateur n’est pas identifié dans la table Paramètres de configuration du Serveur MID [ecc_agent_config] comme l’utilisateur qu’un ou plusieurs Serveurs MID sont configurés pour utiliser pour l’authentification et l’autorisation lors de la connexion à l’instance.
    • Aucune tentative de connexion, qu’elle ait échoué ou réussi, n’a été enregistrée dans la table Événements [sysevent] pour l’utilisateur pendant la période de génération de rapports planifiée.
    Remarque :
    Le champ Serveur MID [mid_server] de la table Problèmes de Serveur MID [ecc_agent_issue] est vide (=NULL).

    Problèmes de configuration

    L’un des messages suivants, décrit ci-dessus, peut indiquer un problème de configuration :
    • Échec de l’authentification de connexion pour l’utilisateur <nom d’utilisateur> avec mid_server rôle non associé à un serveur MID.
    • Échec de l’autorisation de connexion pour l’utilisateur <nom d’utilisateur> avec mid_server rôle non associé à un serveur MID.
    • L’utilisateur <nom d’utilisateur> avec mid_server rôle n’est pas associé à un serveur MID. Aucune tentative de connexion au cours de la période de référence.
    Voici quelques erreurs de configuration courantes :
    • Un administrateur a négligé d’associer l’enregistrement utilisateur à l’enregistrement du Serveur MID, comme indiqué dans la table Paramètres de configuration du Serveur MID [ecc_agent_config]. Cette table est en lecture seule et ne peut pas être mise à jour directement. Pour associer un utilisateur à un serveur MID, configurez le nom d’utilisateur et le mot de passe dans le fichier de config.xml du serveur MID, puis redémarrez le serveur MID.
    • Au cours du processus de reconfiguration d’un serveur MID pour utiliser un compte différent pour la connexion TCP/IP, l’administrateur n’a pas encore supprimé le rôle mid_server du compte ni supprimé le compte.
    • Un compte d’utilisateur polyvalent a été créé et un grand nombre de rôles, y compris le rôle mid_server, bien que ce compte n’ait jamais été destiné à être utilisé comme un compte MID Server.

    Utilisateur qui s’authentifie et autorise avec succès, mais n’a peut-être pas besoin mid_server rôle

    Le message suivant s’affiche lorsqu’un utilisateur disposant du rôle mid_server qui n’est pas associé à un serveur MID se connecte avec succès : Utilisateur <nom d’utilisateur> avec mid_server rôle connecté avec succès, mais non associé à un serveur MID. Le rôle mid_server doit être réservé à l’utilisation de Serveur MID uniquement.

    L’include de script MIDUserConnectivity signale les utilisateurs actifs ayant le rôle mid_server qui ne sont pas identifiés comme utilisateurs de Serveur MID configuré et dont la dernière tentative de connexion a réussi pendant la période planifiée. Ce message suggère que les informations d’identification de l’utilisateur sont utilisées par un administrateur système ou un processus qui n’est pas en cours d’exécution sur un serveur MID. L’hypothèse ici est que le rôle mid_server ne doit être utilisé que pour les applications déployées sur un serveur MID. La présence de ce message rappelle à l’administrateur système de supprimer les rôles de mid_server superflus des comptes d’utilisateurs qui n’en ont pas besoin.

    Ce message apparaît dans la table Problème de Serveur MID [ecc_agent_issue] lorsque :
    • L’utilisateur dispose du rôle mid_server.
    • L’utilisateur n’est pas identifié dans la table Paramètres de configuration du Serveur MID [ecc_agent_config] comme l’utilisateur qu’un ou plusieurs Serveurs MID sont configurés pour utiliser pour l’authentification et l’autorisation lors de la connexion à l’instance.
    • La table Événements [sysevent] contient des publications montrant que la dernière tentative de connexion associée à l’utilisateur a réussi pendant la période planifiée. La table [sysevent] contient un enregistrement avec les paramètres suivants :
      • Champ Nom d’événement [nom] défini pour vous connecter.
      • Champ parm1 [parm1] attaché au nom de l’utilisateur, correspondant au champ ID d’utilisateur [user_name] dans la table Utilisateurs [sys_user].
    Remarque :
    Le champ Serveur MID [mid_server] de la table Problèmes de Serveur MID [ecc_agent_issue] est vide (=NULL).

    Tester les efforts de rattrapage pour les problèmes de connectivité de l’utilisateur de Serveur MID

    Après avoir tenté de résoudre un problème de connectivité utilisateur qui apparaît dans la table Problème de Serveur MID [ecc_agent_issue], vous pouvez tester vos efforts de rattrapage sans avoir à attendre la prochaine période de rapport planifiée en raccourcissant l’intervalle d’échantillonnage.

    Avant de commencer

    Rôle requis : admin

    Pourquoi et quand exécuter cette tâche

    Reconfigurez l’intervalle d’échantillonnage à l’aide de cette procédure, puis examinez les résultats dans la table Problème de Serveur MID [ecc_agent_issue]. Vous pouvez définir n’importe quel intervalle de temps pour l’échantillon, mais vous devez définir une fenêtre d’au moins 5 minutes, car il s’agit de l’intervalle par défaut du intervalle de mise à jour du serveur MID qui signale son état. La méthode recommandée pour configurer un intervalle d’échantillonnage plus court consiste à copier et modifier le code à partir de la tâche planifiée MIDUserConnectivity, puis à l’exécuter manuellement dans l’utilitaire de script en arrière-plan.
    Avertissement :
    Évitez de modifier le script dans l’enregistrement de calendrier MIDUserConnectivity. Si vous apportez une modification à cet enregistrement, il ne sera pas mis à jour lorsque vous mettrez à niveau l’instance.

    Procédure

    1. Accédez à la Tout > Définition du système > Travaux planifiés.
    2. Ouvrez la tâche planifiée MIDUserConnectivity.
    3. Copiez cette ligne à partir du champ Exécuter ce script :
      MIDUserConnectivity(0).checkConnectivity(4 * (60 * 60 * 1000)) ;

      Ce code définit l’intervalle d’échantillonnage de 4 heures en millisecondes et désactive le débogage avec la valeur MIDUserConnectivity(0 ).

    4. Accédez à la Définition du système > Scripts : arrière-plan.
    5. Collez le code de la tâche planifiée dans le champ Exécuter le script .
    6. Définissez l’intervalle d’échantillonnage sur 5 minutes en changeant le calcul du temps comme suit : (5 * 60 * 1000).
      La commande modifiée ressemble à ceci : MIDUserConnectivity(0).checkConnectivity (5 * 60 *1000) ;
    7. Cliquez sur Exécuter le script.
    8. Ouvrez l’enregistrement du serveur MID qui a rencontré le problème et sélectionnez la liste connexe Problèmes de serveur MID .
      Le problème est mis à jour comme suit :
      • Si le problème persiste, la colonne Nombre est incrémentée et la colonne Dernière détection affiche la date et l’heure actuelles.
      • Si le problème n’existe plus, le système passe à l’étatRésolu.
    9. Facultatif : Vous pouvez activer le débogage en sélectionnant un niveau, puis exécuter à nouveau le script pour voir la répartition de chaque condition évaluée.
      Utilisez ces paramètres pour sélectionner un niveau de débogage :
      • Pour obtenir une vue récapitulative, entrez MIDUserConnectivity(1).
      • Pour une vue détaillée, entrez MIDUserConnectivity(2).

      Pour plus d’informations sur le type d’informations de débogage fournies, reportez-vous à la section Interprétation des résultats de débogage d’utilisateur de Serveur MID.