如何在没有管理员权限的情况下从Google Apps帐户获取域用户列表?

时间:2011-06-27 21:38:53

标签: google-api

这是与How can i get list of Domain user's from Google Apps account?

类似的问题

但是,我想使用普通帐户(不是管理帐户)来检索用户列表。似乎这应该是可能的,因为gmail自动完成返回未在用户的联系人商店中列出的域联系人。我已经查看了自动完成Ajax调用,但它需要在字符串的开头有一些东西(不,我真的不想一个接一个地遍历a-z - 这只是hacky的方法)。例如:

  

https://mail.google.com/mail/c/u/0/data/contactstore?ac=true&ct=true&gp=true&hl=en&id=domain&max=15&out=js&tok= beginningOfUsersName & type = 4

两种版本的Google通讯录API似乎都会省略域用户,除非您将其导入自己的联系人列表中。我也看过在“同事”system group中查询用户,但都无济于事。我还发现有趣的是,在Google日历上“添加同事的日历”提供自动填充功能 - 他们会使用弹出窗口。

我正在开发一个C#项目,但这是一个常见的Google API问题,所以任何语言的指针都会有所帮助。

1 个答案:

答案 0 :(得分:2)

<强>更新

现在使用admin /目录google api端点看起来这是可行的 见:https://developers.google.com/admin-sdk/directory/v1/guides/manage-users?authuser=0#retrieve_users_non_admin

原始回答

我能够解决这个问题,所以我会记录解决方法,即使它不涉及Google。我编写了一个程序(在C#中)来查询内部Active Directory(LDAP)存储,并从那里获取所有用户。此时我可以获取他们的电子邮件地址并使用它查询Google。不是最好的方法,但它符合我的需要。

C#是从这个powershell脚本大致模式化的,虽然我拿出了计算机查询并添加到用户电子邮件地址的捕获中:http://www.visualbasicscript.com/List-all-users-or-computers-in-the-default-domain-m35650.aspx

我为获取Google正确的电子邮件地址而包含的LDAP属性是“proxyAddresses”,但这对所有环境都不正确。