尽管您可能需要Google Apps Script HTML Service来提供可与您的自定义用户界面的服务器端Apps脚本功能交互的网页,但您可能还需要Admin SDK's Directory API来管理用户。
如文档中表示,
管理SDK Directory服务允许您使用管理SDK的API目录中的Apps脚本。此API为Google Apps域(包括经销商)的管理员提供管理其域中的设备,组,用户和其他实体的能力。
首先,您可以使用users: list
列出所有可能的用户。例如,你可以在其中可以按名字排序域列表中的用户:
function listAllUsers() {
var pageToken, page;
do {
page = AdminDirectory.Users.list({
domain: 'example.com',
orderBy: 'givenName',
maxResults: 100,
pageToken: pageToken
});
var users = page.users;
if (users) {
for (var i = 0; i < users.length; i++) {
var user = users[i];
Logger.log('%s (%s)', user.name.fullName, user.primaryEmail);
}
} else {
Logger.log('No users found.');
}
pageToken = page.nextPageToken;
} while (pageToken);
}
然后,使用users: get
来retrieve a user。
下面是通过电子邮件地址获取用户的示例代码,并将其所有数据记录为JSON字符串。
function getUser() {
var userEmail = '[email protected]';
var user = AdminDirectory.Users.get(userEmail);
Logger.log('User data:\n %s', JSON.stringify(user, null, 2));
}
而且,请注意,有Directory API: Prerequisites,也需要在使用此API中Authorize requests描述的授权。
这似乎有点令人困惑,所以我建议您请通过给定的链接了解更多信息。
快乐编码!
Hi Tayam。感谢您的回复,我非常感谢,但是,我不相信您回答了我的具体问题。首先,我已经在使用Google Apps脚本的HTML服务为用户提供html页面。问题是,如果用户使用一个Google帐户访问该网页,但希望用另一个Google帐户访问该网页(因为可能有一个帐户具有另一个帐户没有的权限,例如脚本所在域的成员),则可以我向用户提供在我的页面上切换帐户的方法? – h0dges