【发布时间】:2020-08-28 22:36:26
【问题描述】:
我正在使用这个网站进行测试: https://developers.google.com/classroom/reference/rest/v1/courses/list
我有一个带有服务帐户的项目设置:
- 创建的帐户具有只读域访问权限。
- 事后建立了一个项目。
- 然后我在事后添加了帐户。
- 然后我在该项目中启用了 Classroom API。
- 我将上面链接的站点上的课程范围添加到服务帐户的域范围委派中。
我的管理员帐户收到 200 条响应,其中包含完整的课程列表。我的服务帐户收到空的 200 响应。如果我授予服务帐户域管理员权限,它会返回完整的课程列表。如果需要,我很乐意提供经过净化的屏幕截图,但有谁知道服务帐户需要哪些权限才能通过 API 访问 Google 课堂数据?
【问题讨论】:
-
当您说
If I grant the service account domain admin it returns a full list of courses时,您的意思是 SA 冒充域管理员? SA 可以访问模拟帐户可以访问的相同课程:例如,模拟帐户是教师或学生的课程。如果 SA 不冒充任何人,它只会返回它有权访问的课程(我认为永远不会,因为 SA 不能添加到课程中,也不能创建课程,AFAIK)。要检索完整列表,SA 应模拟域管理员。 -
以上评论能回答你的问题吗?如果是这种情况,我会考虑发布一个扩展此解释的答案。
-
那种答案。有没有办法在没有域管理员的情况下获得可以读取整个环境的 SA 设置?根据你所说的,听起来不是,但我想确定一下。
-
嗨!我发布了一个答案,希望您的问题得到澄清。
标签: google-api google-workspace google-classroom google-admin-settings-api