【发布时间】:2015-06-09 15:42:24
【问题描述】:
当前行为:我们正在使用 google directory api 缓存所有组和组成员。我们发现此特定用户在我们想要将他/她从中删除的组中。我们执行 api 调用来删除用户,我们得到一个 URL not found 响应。
期望的行为:从 xgroup@xappsite 组中删除 xuser@xappsite。
目前,如果您在控制台中查看,您可以看到 xuseraccount 用户查找不包含 xgroup 组,但如果您查看组查找部分,您会看到 xuser 是 xgroup 组的一部分。
然后我们尝试使用 URI 执行 directory.group.member.delete 命令:
这是发送请求。
[FINE]2015-04-14 15:36:58 [sun.net.www.protocol.http.HttpURLConnection]: sun.net.www.MessageHeader@6afa3ce57 对:{DELETE /admin/directory/v1/groups/xgroup@xappsite/members/xuser%40xappsite HTTP/1.1:null}{接受:应用程序/JSON}{内容类型: 应用程序/JSON} -- 删除了额外的响应
这是回复
[FINE]2015-04-14 15:36:58 [sun.net.www.protocol.http.HttpURLConnection]: sun.net.www.MessageHeader@2cdf88d214 对:{null: HTTP/1.1 404 不是 Found}{Vary: X-Origin}{Content-Type: application/json; charset=UTF-8}{日期:2015 年 4 月 14 日星期二 19:36:59 GMT}{到期:14 日星期二 2015 年 4 月 19:36:59 GMT}{Cache-Control: private, max-age=0}{X-Content-Type-Options: nosniff}{X-Frame-Options: SAMEORIGIN}{X-XSS-保护:1;模式=块}{服务器: GSE}{备用协议:443:quic,p=0.5}{接受范围:无}{变化: Origin,Accept-Encoding}{Transfer-Encoding: chunked}
TLDR:
根据 google 内部的组应用程序,基本上该用户是组的成员,但根据用户组列表,该用户不是组的成员。
这是谷歌内部的错误吗?我尝试向他们提交支持请求,但并没有走得太远。我们找到的解决方案是手动删除用户并将其重新添加到每个组。这似乎也只发生在群组的所有者和管理员身上。
【问题讨论】:
-
在 groups.list(developers.google.com/admin-sdk/directory/v1/reference/groups/…) 中,如果添加 userkey(userKey 查询参数返回用户或组具有成员资格的所有组),您是否可以看到错过的组(在users.list) 为上述用户?请告诉我
-
我完成了请求(与相关的 google 应用程序客户一起验证,将我所指的用户放入 userkey 部分)。我无法在此列表中看到错过的组(这实际上与我正在执行的 api 调用相同,但我仔细检查了以防万一)。我还仔细检查过,如果您访问群组应用程序,在谷歌内部这个用户就是群组的成员。
标签: google-admin-sdk