можем ли мы получить доступ к календарю пользователей домена с помощью служебной учетной записи, которая имеет доступ к делегированию домена в php?

Мне удалось получить доступ к данным пользователей домена, используя учетную запись службы, которая имеет полномочия делегирования домена.

Теперь я хочу получить доступ к календарям пользователей моего домена с помощью учетной записи службы.

У меня есть вопросы: возможно ли это сделать? возможно ли получить доступ к календарю пользователей моего домена без предоставления им доступа к этому календарю со мной с помощью служебной учетной записи.

Я работаю в проекте по недвижимости, где пользователи / агент могут резервировать места для списков, в которых они собираются провести это мероприятие, и то же самое будет добавлено в их календарь Google, они также могут удалить событие. - ЭТО РАБОТАЕТ ОТЛИЧНО, поскольку пользователи вошли в систему, используя собственную учетную запись 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('[email protected]');
    $client->setAuthConfig(public_path('path to json file service account .json'));

?>

Спасибо

(Работает в PHP / Laravel)


person Mac    schedule 09.11.2017    source источник


Ответы (1)


Вы можете сослаться на эти сообщения SO: 1 и 2. Код должен использовать учетную запись службы для «олицетворения» пользователей домена одного за другим, а не пытаться совместно использовать календари с учетной записью службы. Кроме того, вам необходимо выполнить шаги для делегирования полномочий домена учетной записи службы в консоли администратора домена Google и добавить правильную область (для календаря это https://www.googleapis.com/auth/calendar).

person abielita    schedule 11.11.2017