GlideImpersonate : global

  • Rversion finale: Australia
  • Mis à jour 12 mars 2026
  • 2 minutes de lecture
  • L’API GlideImpersonate permet aux administrateurs de se faire passer pour un autre utilisateur authentifié à des fins de test.

    Utilisez cette API lorsque vous devez agir en tant qu’autre utilisateur afin de tester les fonctionnalités de votre application. Lorsqu’il emprunte l’identité d’un autre utilisateur, l’administrateur a accès exactement à ce à quoi l’utilisateur dont l’identité a été empruntée aurait accès dans le système, y compris les mêmes menus et modules.
    Remarque :
    Le système enregistre tout ce que fait l’administrateur en empruntant l’identité d’un autre utilisateur comme ayant été fait par cet utilisateur.

    GlideImpersonate : canDebug(String userSysId)

    Vérifie si l’utilisateur spécifié peut effectuer un débogage sur les scripts.

    Pour qu’un utilisateur puisse déboguer des scripts, il doit se trouver sur une instance de développeur. Le débogage n’est pas autorisé sur les instances de production.

    Tableau 1. Paramètres
    Nom Type Description
    userSysId Chaîne sys_Id de l’utilisateur pour vérifier l’aptitude de débogage.
    Tableau 2. Renvoie
    Type Description
    Booléen Vrai : l’utilisateur est en mesure de déboguer l’application.

    Faux : l’utilisateur n’est pas en mesure de déboguer l’application.

    userDebug: function(userId) {
      var impUser = new GlideImpersonate();
      impUser.canDebug(userId);
     }

    GlideImpersonate : canImpersonate(String userSysId)

    Vérifie si l’utilisateur actuel peut emprunter l’identité de l’utilisateur spécifié.

    Si le rôle administrateur n’est pas affecté à l’utilisateur actuel, si l’utilisateur à emprunter est inactif ou s’il existe d’autres problèmes liés à l’emprunt d’identité de l’utilisateur spécifié, la méthode renvoie la valeur « faux » et l’emprunt de l’identité de l’utilisateur est impossible.

    Tableau 3. Paramètres
    Nom Type Description
    userSysId Chaîne sys_Id de l’utilisateur dont l’identité doit être empruntée
    Tableau 4. Renvoie
    Type Description
    Booléen Marqueur indiquant si l’utilisateur actuel peut emprunter l’identité de l’utilisateur spécifié.
    Valeurs possibles :
    • vrai : l’utilisateur actuel peut emprunter l’identité de l’utilisateur spécifié.
    • faux : l’utilisateur actuel ne peut pas emprunter l’identité de l’utilisateur spécifié.
    function onlineImpersonate(userSysId) {
      if (!GlideImpersonate().canImpersonate(userSysId)){
        gs.addInfoMessage("No access to impersonate " + userSysId);
      } else {
        GlideImpersonate().impersonate(userSysId);
      }
      return;
    }

    GlideImpersonate : emprunter l’identité (chaîne userSysId)

    Définit l’ID d’utilisateur de l’administrateur actuel sur l’ID d’utilisateur transmis, permettant à l’administrateur d’agir en tant qu’utilisateur.

    Lorsqu’il emprunte l’identité d’un autre utilisateur, l’administrateur a accès exactement à ce à quoi l’utilisateur dont l’identité a été empruntée aurait accès dans le système, y compris les mêmes menus et modules. Utilisez cette méthode uniquement lorsque vous testez les fonctionnalités d’une application. Une fois que vous avez terminé d’emprunter l’identité d’un utilisateur, assurez-vous d’appeler à nouveau la méthode auprès de l’administrateur sys_Id d’arrêter l’emprunt d’identité.

    Tableau 5. Paramètres
    Nom Type Description
    userSysId Chaîne Sys_id de l’utilisateur dont l’identité doit être empruntée.
    Tableau 6. Renvoie
    Type Description
    Chaîne Sys_id de l’utilisateur connecté avant la demande d’emprunt d’identité.

    L’exemple suivant montre comment obtenir l’objet utilisateur actuel.

    var user = gs.getUserDisplayName();
    gs.print ("The current user display name is: " + user);
    
    var impUser = new GlideImpersonate();
    impUser.impersonate("62826bf03710200044e0bfc8bcbe5df1");
    var user = gs.getUserDisplayName();
    gs.print ("The impersonated user display name is: " + user);
    Sortie :
    The current user display name is: System Administrator
    The impersonated user display name is: Abel Tuter

    GlideImpersonate : isImpersonating()

    Détermine si l’utilisateur actuel emprunte l’identité d’un autre utilisateur.

    Tableau 7. Paramètres
    Nom Type Description
    Néant
    Tableau 8. Renvoie
    Type Description
    Booléen Vrai : l’utilisateur emprunte actuellement l’identité d’un autre utilisateur.

    Faux : l’utilisateur n’emprunte pas actuellement l’identité d’un autre utilisateur.

    function abortOnImpersonate() {
        if (GlideImpersonate().isImpersonating()){
      current.setAbortAction(true);
      gs.addInfoMessage("Transaction canceled due to Impersonation");
        }
        return;
    }