Class Session

Session

La classe Session permet d'accéder aux informations sur la session, telles que l'adresse e-mail de l'utilisateur (dans certains cas) et le paramètre linguistique.

Méthodes

MéthodeType renvoyéBrève description
getActiveUser()UserRécupère des informations sur l'utilisateur actuel.
getActiveUserLocale()StringRécupère la langue de l'utilisateur actuel sous forme de chaîne (par exemple, en pour l'anglais).
getEffectiveUser()UserRécupère les informations concernant l'utilisateur dont l'autorité est exécutée par le script.
getScriptTimeZone()StringRécupère le fuseau horaire du script.
getTemporaryActiveUserKey()StringRécupère une clé temporaire propre à l'utilisateur actif, sans révéler son identité.

Documentation détaillée

getActiveUser()

Récupère des informations sur l'utilisateur actuel. Si les règles de sécurité n'autorisent pas l'accès à l'identité de l'utilisateur, User.getEmail() renvoie une chaîne vide. Les circonstances dans lesquelles l'adresse e-mail est disponible varient: par exemple, l'adresse e-mail de l'utilisateur n'est pas disponible dans un contexte qui permet à un script de s'exécuter sans l'autorisation de cet utilisateur, tel qu'un simple déclencheur onOpen(e) ou onEdit(e), une fonction personnalisée dans Google Sheets ou une application Web déployée pour s'exécuter en tant que moi (c'est-à-dire autorisée par le développeur plutôt que par l'utilisateur). Toutefois, ces restrictions ne s'appliquent généralement pas si le développeur exécute le script lui-même ou s'il appartient au même domaine Google Workspace que l'utilisateur.

// Log the email address of the person running the script.
var email = Session.getActiveUser().getEmail();
Logger.log(email);

Aller-retour

User : utilisateur actuel

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:

  • https://www.googleapis.com/auth/userinfo.email

getActiveUserLocale()

Récupère la langue de l'utilisateur actuel sous forme de chaîne (par exemple, en pour l'anglais).

// Log the language setting of the person running the script.
Logger.log(Session.getActiveUserLocale());

Aller-retour

String : chaîne représentant le paramètre linguistique de l'utilisateur


getEffectiveUser()

Récupère les informations concernant l'utilisateur dont l'autorité est exécutée par le script. Si le script est une application Web configurée pour s'exécuter en tant que moi (le développeur), cette commande renvoie le compte utilisateur du développeur. Si le script s'exécute sous un déclencheur installable, il renvoie le compte de l'utilisateur qui a créé le déclencheur. Dans la plupart des autres scénarios, il affiche le même compte que getActiveUser().

// Log the email address of the user under whose authority the script is running.
var email = Session.getEffectiveUser().getEmail();
Logger.log(email);

Aller-retour

User : utilisateur dont l'autorité est exécutée par le script

Autorisation

Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants :

  • https://www.googleapis.com/auth/userinfo.email

getScriptTimeZone()

Récupère le fuseau horaire du script. Les nouveaux scripts utilisent par défaut le fuseau horaire du propriétaire, mais celui de votre choix peut être modifié en cliquant sur File > Project properties (Propriétés du fichier et du projet) dans l'éditeur de scripts. Notez que les feuilles de calcul disposent d'un fuseau horaire distinct, que vous pouvez modifier en cliquant sur Paramètres de fichier et de fichier dans Google Sheets. Les fuseaux horaires des feuilles de calcul qui diffèrent du fuseau horaire du script sont fréquemment la source de bugs liés au script.

// Log the time zone of the script.
var timeZone = Session.getScriptTimeZone();
Logger.log(timeZone);

Aller-retour

String : fuseau horaire du script


getTemporaryActiveUserKey()

Récupère une clé temporaire propre à l'utilisateur actif, sans révéler son identité. La clé temporaire est alternée tous les 30 jours et est propre au script.

// Log the temporary key of the person running the script.
Logger.log(Session.getTemporaryActiveUserKey());

Aller-retour

String : clé utilisateur active temporaire

Méthodes obsolètes