storage_client.create_bucket Недостаточное разрешение - PullRequest
0 голосов
/ 10 апреля 2020

Я следую инструкциям в документации по облаку Google здесь:

https://cloud.google.com/storage/docs/moving-buckets#storage -create-bucket- python

и когда я запускаю код для создать корзину Я получаю следующую ошибку:

Запрещено: 403 POST https://storage.googleapis.com/storage/v1/b ?: Недостаточно прав доступа

Что может быть неправильным? Куда мне go и разрешить разрешение?

Ответы [ 2 ]

0 голосов
/ 10 апреля 2020

1. Создайте учетную запись службы

gcloud iam service-accounts create [SA-NAME] \
--description "[SA-DESCRIPTION]" \
--display-name "[SA-DISPLAY-NAME]"

2. Получите имя только что созданной учетной записи службы:

gcloud iam service-account list

3. Предоставьте роль администратора хранилища учетной записи службы.

gcloud projects add-iam-policy-binding my-project-123 \
--member serviceAccount:my-sa-123@my-project-123.iam.gserviceaccount.com \
--role roles/storage.admin

4.Создайте ключ учетной записи службы

gcloud iam service-accounts keys create ~/key.json \
--iam-account [SA-NAME]@[PROJECT-ID].iam.gserviceaccount.com

5. Установите переменную env

export GOOGLE_APPLICATION_CREDENTIALS="/home/user/Downloads/[FILE_NAME].json"

6. Запустите код из учебника

0 голосов
/ 10 апреля 2020

Перед тем, как выполнить c, обязательно Настройте аутентификацию для своей клиентской библиотеки. Это включает:

  • Создайте учетную запись службы и ее ключ.
  • Установите ее в качестве переменной среды в вашей Оперативной системе.

Даже если вы при запуске сценария из облачной оболочки необходимо установить эту переменную среды.

Имейте в виду, что служебная учетная запись будет иметь роль владельца, у которой есть права на создание сегментов , но для дополнительные взаимодействия, такие как загрузка или удаление файлов в вашу учетную запись, потребуют некоторых дополнительных ролей, таких как Storage Admin.

Надеюсь, это полезно! :)

...