La classe Sessione consente di accedere alle informazioni sulla sessione, come l'indirizzo email dell'utente (in circostanze) e l'impostazione della lingua.
Metodi
Metodo | Tipo restituito | Breve descrizione |
---|---|---|
getActiveUser() | User | Recupera informazioni sull'utente corrente. |
getActiveUserLocale() | String | Recupera l'impostazione della lingua dell'utente corrente come stringa, ad esempio en per l'inglese. |
getEffectiveUser() | User | Recupera informazioni sull'utente sotto la cui autorità è in esecuzione lo script. |
getScriptTimeZone() | String | Restituisce il fuso orario dello script. |
getTemporaryActiveUserKey() | String | Riceve una chiave temporanea univoca per l'utente attivo, ma che non rivela l'identità dell'utente. |
Documentazione dettagliata
getActiveUser()
Recupera informazioni sull'utente corrente. Se i criteri di sicurezza non consentono l'accesso ai dati dell'utente
Identity, User.getEmail()
restituisce una stringa vuota. Le circostanze in cui
l'indirizzo email disponibile variano: ad esempio, l'indirizzo email dell'utente non è disponibile in
contesto che consente l'esecuzione di uno script senza l'autorizzazione dell'utente, come un semplice trigger onOpen(e)
o onEdit(e)
, una funzione personalizzata in Fogli Google o un'app web
con deployment in "execute as me" cioè autorizzati dallo sviluppatore anziché dall'utente.
Tuttavia, queste restrizioni in genere non si applicano se lo sviluppatore esegue lo script personalmente
o appartengono allo stesso dominio Google Workspace dell'utente.
// Log the email address of the person running the script. var email = Session.getActiveUser().getEmail(); Logger.log(email);
Invio
User
: l'utente corrente
Autorizzazione
Gli script che utilizzano questo metodo richiedono l'autorizzazione con uno o più dei seguenti ambiti:
-
https://www.googleapis.com/auth/userinfo.email
getActiveUserLocale()
Recupera l'impostazione della lingua dell'utente corrente come stringa, ad esempio en
per l'inglese.
// Log the language setting of the person running the script. Logger.log(Session.getActiveUserLocale());
Invio
String
: una stringa che rappresenta l'impostazione della lingua dell'utente.
getEffectiveUser()
Recupera informazioni sull'utente sotto la cui autorità è in esecuzione lo script. Se lo script è un
app web impostata su "esegui come me" (lo sviluppatore), viene restituito l'account utente dello sviluppatore. Se
lo script è in esecuzione in un file
trigger, restituisce l'account dell'utente che ha creato l'attivatore. Nella maggior parte degli altri
vengono restituiti lo stesso account di getActiveUser()
.
// Log the email address of the user under whose authority the script is running. var email = Session.getEffectiveUser().getEmail(); Logger.log(email);
Invio
User
: l'utente sotto la cui autorità è in esecuzione lo script
Autorizzazione
Gli script che utilizzano questo metodo richiedono l'autorizzazione con uno o più dei seguenti ambiti:
-
https://www.googleapis.com/auth/userinfo.email
getScriptTimeZone()
Restituisce il fuso orario dello script. I nuovi script utilizzano per impostazione predefinita il fuso orario del proprietario, ma il fuso orario dello script può essere modificato facendo clic su File > Proprietà del progetto nello script editor. Tieni presente che i fogli di lavoro hanno un fuso orario separato, che può essere modificato facendo clic File > Impostazioni del foglio di lavoro in Fogli Google. Fusi orari dei fogli di lavoro diversi da il fuso orario dello script è una fonte frequente di bug di scripting.
// Log the time zone of the script. var timeZone = Session.getScriptTimeZone(); Logger.log(timeZone);
Invio
String
: il fuso orario dello script
getTemporaryActiveUserKey()
Riceve una chiave temporanea univoca per l'utente attivo, ma che non rivela l'identità dell'utente. La chiave temporanea ruota ogni 30 giorni ed è univoca per lo script.
// Log the temporary key of the person running the script. Logger.log(Session.getTemporaryActiveUserKey());
Invio
String
: la chiave utente attiva temporanea