Мне нужно проверить, имеют ли учетные данные пользователя доступ к проекту и имеют ли они следующие разрешения, такие как.
compute.images.get,
compute.images.list,
compute.instanceGroups.get,
compute.instances.start,
compute.instances.delete,
compute.instanceTemplates.list
Я использую следующую PHP облачную библиотеку Google
https://github.com/googleapis/google-api-php-client
При получении объекта диспетчера ресурсов я пытаюсь выполнить метод testIamPermissions для проекта.
https://cloud.google.com/resource-manager/reference/rest/v1/projects/testIamPermissions
Он работает нормально с использованием конечной точки API, но с использованием PHP SDK нет метода, доступного только для него папки а также операция объект доступен.
Я использую следующий файл JSON
{
"type": "service_account",
"project_id": "p123",
"private_key_id": "p123",
"private_key": "p123",
"client_email": "[email protected]",
"client_id": 12345",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://oauth2.googleapis.com/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/p123.iam.gserviceaccount.com"}
Я думаю, что вы должны взглянуть на эту документацию, связанную с projects.testIamPermissions и посмотрите пример PHP, включенный в справочную документацию.
Других решений пока нет …