La classe Session permet d'accéder aux informations de session, telles que l'adresse e-mail de l'utilisateur (dans certaines circonstances) et le paramètre de langue.
Méthodes
| Méthode | Type renvoyé | Brève description |
|---|---|---|
get | User | Obtient des informations sur l'utilisateur actuel. |
get | String | Récupère le paramètre de langue de l'utilisateur actuel sous forme de chaîne (par exemple, en pour l'anglais). |
get | User | Obtient des informations sur l'utilisateur sous l'autorité duquel le script est exécuté. |
get | String | Récupère le fuseau horaire du script. |
get | String | Obtient une clé temporaire unique à l'utilisateur actif, mais ne révèle pas son identité. |
Documentation détaillée
getActiveUser()
Obtient 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 disponible dans aucun contexte permettant à un script de s'exécuter sans l'autorisation de cet utilisateur, comme 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 au lieu de l'utilisateur).
Toutefois, ces restrictions ne s'appliquent généralement pas si le développeur exécute lui-même le script ou s'il appartient au même domaine Google Workspace que l'utilisateur.
// Log the email address of the person running the script. const email = Session.getActiveUser().getEmail(); Logger.log(email);
Renvois
User : l'utilisateur actuel
Autorisation
Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des scopes suivants :
-
https://www.googleapis.com/auth/userinfo.email
getActiveUserLocale()
Récupère le paramètre de 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());
Renvois
String : chaîne représentant le paramètre de langue de l'utilisateur
getEffectiveUser()
Obtient des informations sur l'utilisateur sous l'autorité duquel le script est exécuté. Si le script est une application Web définie sur "Exécuter en tant que moi" (le développeur), cela renvoie le compte utilisateur du développeur. Si le script s'exécute sous un déclencheur installable, cette méthode renvoie le compte de l'utilisateur qui a créé le déclencheur. Dans la plupart des autres cas, le compte renvoyé est le même que celui de getActiveUser().
// Log the email address of the user under whose authority the script is // running. const email = Session.getEffectiveUser().getEmail(); Logger.log(email);
Renvois
User : utilisateur sous l'autorité duquel le script est exécuté
Autorisation
Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des scopes suivants :
-
https://www.googleapis.com/auth/userinfo.email
getScriptTimeZone()
Récupère le fuseau horaire du script. Par défaut, les nouveaux scripts utilisent le fuseau horaire du propriétaire. Toutefois, vous pouvez le modifier en cliquant sur Fichier > Propriétés du projet dans l'éditeur de script. Notez que les feuilles de calcul ont un fuseau horaire distinct, que vous pouvez modifier en cliquant sur Fichier > Paramètres de la feuille de calcul dans Google Sheets. Les fuseaux horaires de feuille de calcul qui diffèrent de celui du script sont une source fréquente de bugs de script.
// Log the time zone of the script. const timeZone = Session.getScriptTimeZone(); Logger.log(timeZone);
Renvois
String : fuseau horaire du script
getTemporaryActiveUserKey()
Obtient une clé temporaire unique à l'utilisateur actif, mais ne révèle pas 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());
Renvois
String : clé d'utilisateur actif temporaire