Class Session

Sessione

La classe Sessione consente di accedere alle informazioni sulla sessione, come l'indirizzo email dell'utente (in circostanze) e l'impostazione della lingua.

Metodi

MetodoTipo restituitoBreve descrizione
getActiveUser()UserRecupera informazioni sull'utente corrente.
getActiveUserLocale()StringRecupera l'impostazione della lingua dell'utente corrente come stringa, ad esempio en per l'inglese.
getEffectiveUser()UserRecupera informazioni sull'utente sotto la cui autorità è in esecuzione lo script.
getScriptTimeZone()StringRestituisce il fuso orario dello script.
getTemporaryActiveUserKey()StringRiceve 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

Metodi deprecati