我们是否可以使用服务帐户访问域用户日历,该帐户在php中具有域范围的委托访问权限?
我已经成功地使用一个服务帐户访问了域用户的数据,该帐户具有域范围的委托权限 现在我想使用服务帐户访问我的域用户的日历 我的问题是,有可能做这件事吗?是否可以访问我的域用户日历,而不必使用服务帐户与我共享该日历 我在一个房地产项目中工作,在那里,用户/代理可以预订他们将要主办此次活动的列表,这些列表将被添加到他们的谷歌日历中,他们还可以删除活动。-这很好,因为用户使用自己的gmail帐户登录,所以他们可以添加/编辑那里的日历 但是现在如果我有超级管理员权限,我想从日历中编辑/分配/删除这些事件 那么,有可能吗 这就是我使用服务帐户的方式我们是否可以使用服务帐户访问域用户日历,该帐户在php中具有域范围的委托访问权限?,php,google-calendar-api,google-workspace,Php,Google Calendar Api,Google Workspace,我已经成功地使用一个服务帐户访问了域用户的数据,该帐户具有域范围的委托权限 现在我想使用服务帐户访问我的域用户的日历 我的问题是,有可能做这件事吗?是否可以访问我的域用户日历,而不必使用服务帐户与我共享该日历 我在一个房地产项目中工作,在那里,用户/代理可以预订他们将要主办此次活动的列表,这些列表将被添加到他们的谷歌日历中,他们还可以删除活动。-这很好,因为用户使用自己的gmail帐户登录,所以他们可以添加/编辑那里的日历 但是现在如果我有超级管理员权限,我想从日历中编辑/分配/删除这些事件 那
<?php
$client = new \Google_Client();
$authArray = array(
'https://www.googleapis.com/auth/admin.directory.user',
'https://www.googleapis.com/auth/admin.directory.group',
'https://www.googleapis.com/auth/admin.directory.resource.calendar'
);
$client->setApplicationName('appicationname');
$client->setScopes($authArray);
$client->setSubject('emailp@domain.com');
$client->setAuthConfig(public_path('path to json file service account .json'));
?>
谢谢
在PHP/Laravel中工作您可以参考以下SO帖子:和。代码应该使用服务帐户逐个模拟域用户,而不是尝试与服务帐户共享日历。此外,您需要遵循在google域管理控制台中将域范围的权限委托给服务帐户的步骤,并为日历添加正确的作用域,它是https://www.googleapis.com/auth/calendar.