0
Я пытаюсь экспортировать таблицу из базы данных Cloud SQL, принадлежащей другому проекту. Вызывающий проект имеет доступ и может успешно отображать экземпляры (используя getItems()), но при попытке экспорта возвращается «Клиент не уполномочен делать этот запрос».Как экспортировать с помощью Cloud SQL API из экземпляров Cloud SQL, принадлежащих другому проекту?
Вот код, который я использую для экспорта.
$client = new Google_Client();
$client->setAuth(new Google_Auth_AppIdentity($client));
$client->getAuth()>authenticateForScope('https://www.googleapis.com/auth/sqlservice.admin');
$client->getAuth()>authenticateForScope('https://www.googleapis.com/auth/cloud-platform');
$sqladmin = new Google_Service_SQLAdmin($client);
$postBody = new Google_Service_SQLAdmin_InstancesExportRequest();
//Set csv options
$csv_options = new Google_Service_SQLAdmin_ExportContextCsvExportOptions();
$csv_options->setSelectQuery('SELECT id FROM test.test;');
//set export context options.
$ec = new Google_Service_SQLAdmin_ExportContext();
$ec->setCsvExportOptions($csv_options);
$ec->setUri('gs://bucket/file.csv');
$postBody->setExportContext($ec);
$response = $sqladmin->instances->export('testing-project-xxxx', 'database', $postBody);