Я бы хотел установить детальную политику IAM для каждого ресурса для одного набора данных Google BigQuery. Документация, которую я нашел до сих пор, только объясняет, как получить и установить политики IAM для ресурса проекта, например. https://cloudresourcemanager.googleapis.com/v1/projects/<project-id>:getIamPolicy.
https://cloudresourcemanager.googleapis.com/v1/projects/<project-id>:getIamPolicy
Я пытаюсь получить политику для ресурса в рамках проекта, в частности набора данных Google BigQuery с URL-адресом API, подобным следующему: https://www.googleapis.com/bigquery/v2/projects/<project-id>/datasets/<dataset-id>.
https://www.googleapis.com/bigquery/v2/projects/<project-id>/datasets/<dataset-id>
Я пробовал несколько очевидных URI, таких как
https://www.googleapis.com/bigquery/v2/projects/<project-id>/datasets/<dataset-id>:getIamPolicy
https://cloudresourcemanager.googleapis.com/v1/projects/<project-id>/datasets/<dataset-id>:getIamPolicy
но пострадали 404 ошибки. Кто-нибудь знает правильный шаблон URL для политик IAM для наборов данных Google BigQuery?
Я пытаюсь получить политику для ресурса в рамках проекта, в частности набора данных Google BigQuery ...
У вас уже есть это в вашем вопросе - вы должны использовать GET https://www.googleapis.com/bigquery/v2/projects/<projectId>/datasets/<datasetId> и в ответ вы должны искать access свойство
GET https://www.googleapis.com/bigquery/v2/projects/<projectId>/datasets/<datasetId>
access
Из документации :
Доступ - это массив объектов, которые определяют доступ к набору данных для одного или нескольких объектов. Вы можете установить это свойство при вставке или обновлении набора данных, чтобы контролировать, кому разрешен доступ к данным. Если не указано во время создания набора данных, BigQuery добавляет доступ к набору данных по умолчанию для следующих объектов: access.specialGroup: projectReaders; access.role: ЧИТАТЕЛЬ; access.specialGroup: projectWriters; access.role: ПИСАТЕЛЬ; access.specialGroup: projectOwners; access.role: ВЛАДЕЛЕЦ; access.userByEmail: [электронная почта создателя набора данных]; access.role: ВЛАДЕЛЕЦ;
Доступ - это массив объектов, которые определяют доступ к набору данных для одного или нескольких объектов. Вы можете установить это свойство при вставке или обновлении набора данных, чтобы контролировать, кому разрешен доступ к данным. Если не указано во время создания набора данных, BigQuery добавляет доступ к набору данных по умолчанию для следующих объектов:
access.specialGroup: projectReaders; access.role: ЧИТАТЕЛЬ; access.specialGroup: projectWriters; access.role: ПИСАТЕЛЬ; access.specialGroup: projectOwners; access.role: ВЛАДЕЛЕЦ; access.userByEmail: [электронная почта создателя набора данных]; access.role: ВЛАДЕЛЕЦ;
И, если вы хотите изменить доступ - вы должны использовать PATCH https://www.googleapis.com/bigquery/v2/projects/<projectId>/datasets/<datasetId> или PUT https://www.googleapis.com/bigquery/v2/projects/<projectId>/datasets/<datasetId>
PATCH https://www.googleapis.com/bigquery/v2/projects/<projectId>/datasets/<datasetId>
PUT https://www.googleapis.com/bigquery/v2/projects/<projectId>/datasets/<datasetId>