1

我想授权非管理员用户使用 AdminDirectory(谷歌应用管理 SDK 的一部分)作为谷歌应用脚​​本的一部分。基本上我希望用户根据他们的用户名获取其他用户的全名列表。

我知道我可以使用 OAuth2 执行此操作,但我找不到 Admin SDK-AdminDirectory 的 Google 应用脚本代码示例。

我创建了一个服务帐户,并且拥有并拥有我的客户 ID 和密钥 ID。接下来我需要做什么?我找到了这个https://developers.google.com/api-client-library/javascript/features/authentication但我不知道如何获得授权工作。

这是我的脚本的最小版本:(它将为授权用户生成用户 edutett0707@edu.kristinehamn.se 的全名)

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

2 回答 2

2

尝试:

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

viewType domain_public 告诉 api 返回共享给所有其他用户的用户信息。

周杰伦

于 2016-06-26T13:15:07.883 回答
-1

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

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

  • 客户 ID。
  • 私钥文件。
  • 电子邮件地址。

注意:只有有权访问 Admin API 的用户才能访问 Admin SDK Directory API,因此您的服务帐户需要模拟其中一位用户才能访问 Admin SDK Directory API。

资源:

希望这可以帮助

于 2016-06-25T19:06:03.633 回答