Как я могу предоставить индивидуальные разрешения в Google Cloud Platform для пользователей BigQuery, использующих python - PullRequest
0 голосов
/ 21 января 2019

Мне нужно настроить очень детальный контроль доступа для учетных записей пользователей в GCP с использованием скрипта Python

Я знаю, что через UI / gcloud util я могу назначить ему роли ролей / большой запрос. пользователь, но у него много других разрешений. Я не хочу, чтобы эта служебная учетная запись имела.

Как я могу предоставить индивидуальные разрешения через скрипты Python?

1 Ответ

0 голосов
/ 21 января 2019

Перейдите на консоль BigQuery , щелкните стрелку справа от одного набора данных и затем нажмите Share dataset

Share dataset

А затем добавьте адрес электронной почты пользователя здесь:

Add user

Вы можете выбрать одну из 3 доступных ролей: Просмотр / Владелец / Редактор.

Делайте это в каждом наборе данных для каждого пользователя.

Обновление, чтобы сделать это с помощью скрипта Python

Вы можете сделать это с помощью скрипта Python, следуя этого небольшого урока .

Код будет выглядеть примерно так:

from google.cloud import bigquery
client = bigquery.Client()
dataset = client.get_dataset(client.dataset('dataset1'))

entry = bigquery.AccessEntry(
    role='READER',
    entity_type='userByEmail',
    entity_id='user1@example.com')
assert entry not in dataset.access_entries
entries = list(dataset.access_entries)
entries.append(entry)
dataset.access_entries = entries

dataset = client.update_dataset(dataset, ['access_entries'])  # API request

#assert entry in dataset.access_entries
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...