我正在尝试使用Google的管理目录API(使用Google的python库)。
我可以使用以下代码列出目录上的用户:
results = client.users().list(customer='my_customer').execute()
但是,这些结果不包括用户所属的组。相反,似乎一旦我有了用户列表,我就必须打电话来获取一个组列表:
results = client.groups().list(customer='my_customer').execute()
然后通过每个小组并致电"成员" api查看哪些用户在一个组中:
results = client.members().list(groupKey='[group key]').execute()
这意味着我必须为每个群组提出新的请求。
这似乎非常低效。必须有一个比这更好的方法,我只是错过了它。它是什么?
答案 0 :(得分:1)
以下方法应该更有效,尽管不是100%好:
对于每个用户,请致电the groups.list
method并传递userKey
参数,以指定您只需要将用户X作为成员的群组。
我不是Python开发者,但它应该是这样的:
results = client.groups().list(customer='my_customer',userKey='user@domain.com').execute()
答案 1 :(得分:1)
没有比你描述的更好的方法了(还有?):迭代群组并获得每个群组的成员列表。
我同意这不是您想要阅读的答案,但它也是我们对小组成员进行维护的方式。
答案 2 :(得分:0)
对于每个用户:
results = client.groups()。list(userKey = user,pageToken = None).execute()
其中'user'是用户的主要/别名电子邮件地址或ID
这将返回用户所属的组页面,请参阅:
https://developers.google.com/admin-sdk/directory/v1/reference/groups/list