Google apps script 使用OAuth2授权非管理员用户使用AdminDirectory

Google apps script 使用OAuth2授权非管理员用户使用AdminDirectory,google-apps-script,oauth-2.0,google-admin-sdk,google-apps-for-education,Google Apps Script,Oauth 2.0,Google Admin Sdk,Google Apps For Education,我想授权非管理员用户使用AdminDirectory(Google apps admin SDK的一部分)作为Google apps脚本的一部分。基本上,我希望用户根据他们的用户名获得其他用户的全名列表 我知道我可以使用OAuth2实现这一点,但我找不到AdminSDK AdminDirectory的Google应用程序脚本代码示例 我已经创建了一个服务帐户,并且拥有客户ID和密钥ID。接下来我需要做什么?我找到了这个,但我不知道如何获得工作授权 下面是我的脚本的一个最小版本:(它将生成用户的全

我想授权非管理员用户使用AdminDirectory(Google apps admin SDK的一部分)作为Google apps脚本的一部分。基本上,我希望用户根据他们的用户名获得其他用户的全名列表

我知道我可以使用OAuth2实现这一点,但我找不到AdminSDK AdminDirectory的Google应用程序脚本代码示例

我已经创建了一个服务帐户,并且拥有客户ID和密钥ID。接下来我需要做什么?我找到了这个,但我不知道如何获得工作授权

下面是我的脚本的一个最小版本:(它将生成用户的全名edutett0707@edu.kristinehamn.se(适用于授权用户)


您可以尝试使用创建服务帐户及其凭据

您需要创建服务帐户及其凭据。在此过程中,您需要收集稍后将用于授权的信息,并在您的代码中使用您的服务帐户进行授权。您需要的三项是您的服务帐户:

  • 客户ID
  • 私钥文件
  • 电子邮件地址
注意:只有具有管理API访问权限的用户才能访问管理SDK目录API,因此您的服务帐户需要模拟其中一个用户才能访问管理SDK目录API

资料来源:

希望这有帮助

试试:

function grupplistor() {
  var userinfo = AdminDirectory.Users.get({
    userKey: "edutett0707@edu.kristinehamn.se", 
    viewType: "domain_public"});
   Logger.log ([userinfo.name.fullName]);
}
viewType domain_public告诉api返回与所有其他用户共享的用户相关的信息

杰伊

function grupplistor() {
  var userinfo = AdminDirectory.Users.get({
    userKey: "edutett0707@edu.kristinehamn.se", 
    viewType: "domain_public"});
   Logger.log ([userinfo.name.fullName]);
}