Google sheets 如何访问运行嵌入在共享电子表格中的脚本的用户的名称?

Google sheets 如何访问运行嵌入在共享电子表格中的脚本的用户的名称?,google-sheets,google-apps-script,Google Sheets,Google Apps Script,我有一个谷歌电子表格,里面有我写的脚本。该脚本将更新以登录用户的名字命名的个人工作表,如果还没有,则创建一个新的工作表 我在“CanEdit”模式下与其他人共享了它,希望访问用户名的代码能像我的情况一样工作,但显然不行 Google Apps脚本似乎包含三种获取当前用户名称的方法: Session.getActiveUser() Session.getEffectiveUser() Session.getUser() 当我不是运行脚本的用户时,它们都返回空字符串 (顺便说一句,我很难区分它们

我有一个谷歌电子表格,里面有我写的脚本。该脚本将更新以登录用户的名字命名的个人工作表,如果还没有,则创建一个新的工作表

我在“CanEdit”模式下与其他人共享了它,希望访问用户名的代码能像我的情况一样工作,但显然不行

Google Apps脚本似乎包含三种获取当前用户名称的方法:

  • Session.getActiveUser()
  • Session.getEffectiveUser()
  • Session.getUser()
当我不是运行脚本的用户时,它们都返回空字符串

(顺便说一句,我很难区分它们之间的区别…)

考虑到我正在以读/写模式共享此电子表格,如果这是一种预期的安全方法,我会有点惊讶。。。这并不是说我不知道访问电子表格的人的电子邮件,我已经明确地与他们分享了。。。另外,谷歌正在申请许可,难道它不能申请访问用户名的许可吗

有办法解决这个问题吗

有办法解决这个问题吗


这些方法仅在您使用Google Apps帐户且与用户位于同一域时有效。如果没有,那么就没有办法获得用户id。AFAIK Google完全删除了常规帐户的此功能。你可以尝试与他们争论一个问题。

这仍然有效吗?我有一个类似的问题: