1

У меня есть учетная запись Google службы и я делаю разрешение следующим образомли нам нужно обновить маркера при использовании учетной записи Google службы

$client = new Google_Client(); 
$client->setAuthConfig('service_account.json'); 
$client->useApplicationDefaultCredentials(); 
$client->addScope('https://www.googleapis.com/auth/admin.directory.user'); 
$email="[email protected]"; 
$client->setSubject($email); 

Я затем создать объект сервиса следующий

$dir = new Google_Service_Directory($client) 

Теперь я смог работать с этим объектом, например, создавать нового пользователя и т. Д. Без каких-либо проблем. Мне интересно, нужно ли мне обновить токен на каком-то этапе. Можете ли вы помочь мне выяснить, если это необходимо, и если да, то как проверить это условие и получить новый токен?

ответ

3

Учетные записи службы являются предварительно авторизованными. Ваша аутентификация связана с файлом .p12 или с частным ключом в json-файле. Эти ключи в некотором смысле Refresh tokens, если хотите. Пока у вас есть эти ключи, вы сможете получить доступ к Google.

Насколько Oauth2 отправляется, когда Google соглашается с вашим приложением получать доступ к своим данным, вам предоставляется токен обновления, который позволит вам получить доступ к их данным.

Существует разница, но в известном смысле токен обновления, а private_key - одно и то же действие. Они позволяют вам получить доступ к данным, к которым у вас есть разрешение на доступ. В случае служебных учетных записей его предварительная авторизация в случае Oauth2 предоставляется пользователем.

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