Как мне получить идентификатор организации моего текущего проекта в Google Cloud Platform?
Я хотел бы знать идентификатор организации моего текущего проекта в GCP.
gcloud projects describe PROJECT_ID
покажет parent
которая может быть организацией, но если родитель - folder
, идентификатор организации не отображается.
Я мог бы повторно пройти по родительской иерархии папок, используя gcloud resource-manager folders describe FOLDER_ID
, но это хлопотно. Это также невозможно, если у меня нет прав на уровне организации.
Но у меня есть доступ к идентификаторам организаций: gcloud organizations list
показывает несколько организаций, но не их привязку к проектам.
Как я могу этого добиться?
2 ответа
Если мы прочитаем здесь, мы обнаружим, что ваша организация является корнем дерева предков вашего текущего проекта.
Мы также обнаружили, что существует API, который можно вызвать для извлечения цепочки предков из данного проекта и выше. Это означает, что мы можем получить идентификатор организации вашего проекта с помощью этого API.
API документирован здесь.
Он имеет формат REST высокого уровня:
POST https://cloudresourcemanager.googleapis.com/v1/projects/{projectId}:getAncestry
Возможная команда может быть:
curl -X POST -H "Authorization: Bearer \"$(gcloud auth application-default print-access-token)\"" \
-H "Content-Type: application/json; charset=utf-8" \
https://cloudresourcemanager.googleapis.com/v1/projects/<MY_PROJECT>:getAncestry
Используйте приведенную ниже команду gcloud в облачной оболочке.
gcloud projects get-ancestors {projectId}
Это должно дать результат, как показано ниже.
ID TYPE
Your-project-ID project
123456789012 folder
567890123456 organization