我们如何获取当前登录谷歌帐户的用户名

时间:2020-12-20 17:40:36

标签: google-apps-script google-sheets google-sheets-api

我想使用谷歌电子表格和应用程序脚本设计一个系统,我想验证当前登录系统的帐户的用户名。我如何从系统/浏览器中获取用户名,以便它只能访问其 google 帐户当前登录系统的那些用户。

1 个答案:

答案 0 :(得分:0)

答案:

可以通过 Apps Script 将当前登录用户的电子邮件地址获取给 Google,但不能将用户登录到浏览器。< /em>

更多信息:

Google Apps 脚本内置了 User 类,它可以检索当前登录用户的电子邮件地址(因此他们的用户名与电子邮件地址中 @ 之前的用户名相同)。不过,正如 the documentation:

所指出的,这有限制 <块引用>

getEmail()

获取用户的电子邮件地址(如果有)。如果安全策略不允许访问用户的电子邮件地址,则此方法返回一个空字符串。电子邮件地址可用的情况各不相同:例如,用户的电子邮件地址在任何允许脚本在未经用户授权的情况下运行的上下文中都不可用,例如简单的 onOpen(e)onEdit(e) 触发器、Google 表格中的自定义函数,或部署为“以我的方式执行”(即由开发人员而非用户授权)的网络应用程序。但是,如果开发者自己运行脚本或与用户属于同一个 Google Workspace 域,则这些限制通常不适用。

退货

String — 用户的电子邮件地址,如果安全策略不允许访问用户的电子邮件地址,则为空字符串。

这是获取用户名的唯一方法。其使用指导如下:

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

请记住:这只能检索在 accounts.google.com 上登录其 Google 帐户的用户。这不会从本地浏览器检索信息,并且使用 Apps 脚本不可能这样做。

希望对你有帮助!

参考: