gpt4 book ai didi

google-admin-sdk - 有没有办法用选项 :directOnly=false using Admin SDK? 检索成员的组

转载 作者:行者123 更新时间:2023-12-04 20:00:43 25 4
gpt4 key购买 nike

Provisioning API 提供了“directOnly”参数以在检索用户所属的 gropus 时控制组的范围。我应该从 Provisioning API 迁移 Admin SDK,但我没有找到使用 directOnly=false 检索用户组的方法。如何使用 Directory API 执行此操作?

我实现了以下(伪语言),因为我找不到办法。
但我认为这不是有效的方式。
我想知道“directOnly=false”是否有任何计划。

// 1. List all groups in domain
allGroupsInDomain = ... // "List all groups in domain"
// 2. List all members for each groups
allMembersForGroup = {}
for (group in allGroupsInDomain) {
allMembersForGroup[group] = ... // "List all members for group"
}

// 3. List all users in domain
allUsersInDomain = "List all users in domain"
// 4. List all groups for user(direct only)
allGroupsForUser = {} // I want to get this for all users
for (user in allUsersInDomain) {
directGroupsForUser = ... // "List all groups for user(direct only)"
for (group in directGroupsForUser) {
allGroupsForUser[user].add(group);
allGroupsForUser[user].add(searchAncestorsOf(group));
}
}

// 5. Calculate all groups for user contains not directly group using results of (1,2,3,4)
function searchAncestorsOf(group) {
ancestors = []
for (group_ in allGroupsInDomain) {
if (group_.hasMember(group)) {
ancestors.add(group_);
ancestors.add(searchAncestorsOf(group_));
}
}
return ancestors;
}
  • https://developers.google.com/google-apps/provisioning/#retrieving_all_groups_for_a_member
  • https://developers.google.com/admin-sdk/directory/v1/reference/groups/list
  • 最佳答案

    目前 Admin SDK 没有单一的 API 调用方法来获取用户的直接和间接组成员资格。对于一些用户,我能想到的最快方法是:

  • 使用 members.list 和 userKey 参数获取用户的所有直接成员资格组。
  • 对于用户是其直接成员的每个组,通过使用 members.list 再次确定该组是否是其他组的成员,这次 userKey 是每个组而不是用户。如果该组是另一个组的成员,则该用户将是给定组的间接成员。
  • 关于google-admin-sdk - 有没有办法用选项 :directOnly=false using Admin SDK? 检索成员的组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22272673/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com