Как мне получить идентификатор организации моего текущего проекта в 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
Другие вопросы по тегам