Sto utilizzando google-api-php-client 0.6.1 e mi piacerebbe sapere c'è un modo per impersonare un utente concreto con un account di servizio? La mia applicazione ha bisogno di memorizzare alcuni file nella sua unità di google. Quindi, ho deciso di utilizzare l'account di servizio utente e la chiave .p12: l'autenticazione. Funziona alla grande, ma tutti i file vengono archiviati nell'account di servizio, quindi non posso gestirli. Vorrei che i documenti fossero archiviati in un determinato account (che stava usando per creare il progetto API e l'account di servizio stesso). Stavo cercando di utilizzare questo codice:Impersonare l'utente google con un account di servizio
$KEY_FILE = <p12 key file path>;
$key = file_get_contents($KEY_FILE);
$auth = new Google_AssertionCredentials(
$SERVICE_ACCOUNT_NAME,
array('https://www.googleapis.com/auth/drive'),
$key);
$auth->prn = '<[email protected]>';
$client = new Google_Client();
$client->setUseObjects(true);
$client->setAssertionCredentials($auth);
return new Google_DriveService($client);
ma ho ottenuto "Errore rinfrescante il token OAuth2, un messaggio: '{ "errore": "ACCESS_DENIED"}'"
Ho riscontrato lo stesso problema e sembra che dovrei apportare alcune modifiche alla stessa configurazione di google. Hai trovato la soluzione? Puoi indicarmi cosa dovrei cambiare? – Sergei