要设置哪些管理员角色设置才能访问该域的Google Classroom API?

时间:2020-03-22 03:41:43

标签: google-classroom

我们正在尝试创建一个单独的管理员角色,以分配给用户以调用Google Classroom API(域)。如果我们将其设置为“超级管理员”,则可以使用,但我们不想授予这些用户超级管理员权限。有谁知道任何指南或要对此设置的设置?

1 个答案:

答案 0 :(得分:0)

答案:

除了Super Admin之外,没有任何其他角色可以让用户执行所有这些操作。您可以通过assigning custom admin roles向用户检查。即使选中了所有可能的特权,如果用户不是Super Admin,该用户也无法在Classroom API中充当域管理员。

非超级管理员可以做什么:

非超级管理员用户只能访问他们所属的课程(作为老师或学生),而不能访问域中的所有课程。

他们可以直接通过courses.teachers.deletecourses.students.delete将学生和其他老师从他们拥有的课程中移除,但是他们 cannot directly add个新的学生和老师< / strong>通过courses.teachers.createcourses.students.create转到他们​​的课程。只有域管理员(超级管理员)可以执行此操作。非管理员必须首先通过invitations.create()发送邀请,并获得用户的同意。

更新:服务帐户:

您也可以使您的应用程序使用服务帐户来模拟超级管理员,以便该帐户可以代表该管理员执行操作,并执行该管理员可以执行的操作。为此,您必须通过访问create the Service Account并遵循指定的Admin console步骤here授予域范围的权限

请注意,授予域范围的授权是一个非常强大的工具,因为它使服务帐户能够代表域中的任何用户行事,因此如果管理不当,很容易被滥用(没有域范围的委派,服务帐户类似于普通帐户,并且只能访问由其创建,与之共享的资源,等等,例如普通帐户。

无论如何,一旦创建了域范围的委派,在应用程序中使用服务帐户就与使用常规帐户非常相似。在应用程序中,您必须构建凭据,然后通过写入用户的电子邮件地址来指定该帐户应模拟的用户。我不知道您使用的是哪种语言,但是您可以找到使用Java和Python here或使用节点here来执行此操作的代码段。

参考: