首页 > 解决方案 > 用于组织的 Google 日历 API

问题描述

我正在开发一个学校应用程序。我可以使用带有 NodeJS 的谷歌日历 API 创建事件。我在学校 google 帐户上创建了 clientID 和 secretID。每次创建事件时,只有管理员有权开始会议。但我希望老师(他们正在创建活动)成为组织者。我怎样才能做到这一点?

标签: google-apigoogle-calendar-apigoogle-apps

解决方案


事件的organizer字段是只读字段。您可以使用该move操作来移动事件并更改组织者,但这只有在经过身份验证的用户对目标日历具有写入权限时才能完成。

一种解决方案是使用服务帐户并执行域范围的委派。通过这种方式,您将能够冒充相关用户并组织所需的活动。

根据服务帐户 文档

服务帐户是应用程序或虚拟机 (VM) 实例使用的一种特殊帐户,而不是个人。应用程序使用服务帐户进行授权的 API 调用。

至于执行域范围的委派,你可能想看看这个:

在企业应用程序中,您可能希望在没有任何手动授权的情况下以编程方式访问用户数据。在 G Suite 域中,域管理员可以向第三方应用程序授予域范围内对其用户数据的访问权限——这称为域范围内的授权。要以这种方式委派权限,域管理员可以使用具有 OAuth 2.0 的服务帐户。

参考


推荐阅读