Google App Engine + проблема с разрешением облачного хранилища Google - PullRequest
0 голосов
/ 27 июня 2018

У меня довольно старое приложение AppEngine (python), которое работает без проблем несколько лет.

Я использую очереди задач для перемещения изображений в Google Cloud Storage.

Мой код использует клиент GCS (https://cloud.google.com/appengine/docs/standard/python/googlecloudstorageclient/setting-up-cloud-storage), чтобы сделать это, и в основном выглядит так:

# open the file and write to it using the gcs client
f = gcs.open(filename, 'w')
f.write(blob)
f.close()

NB. Имя файла включает в себя сегмент, так что оно эффективно '/ [имя_рекламы] / abc123'

Когда я "отслеживаю" проблему, используя инструменты, предоставляемые облачной консолью, я вижу, что через URLFetch выдается ошибка 403, когда она вызывает "storage.googleapis.com".

Я прошел процесс добавления разрешений IAM в корзину для конкретной учетной записи службы механизма приложений (xyz@appspot.gserviceaccount.com). Изменили эту учетную запись на «Администратор хранилища», но, похоже, это не имеет значения. Я также добавил эту роль через права доступа к самому ведру.

Так что я не уверен, почему он не работает ...

У кого-нибудь есть совет относительно того, что я могу делать неправильно? Это все кажется немного запутанным на самом деле.

Спасибо за любую помощь заранее, Matt

...