GCloud gcsfuse отказано в разрешении - PullRequest
0 голосов
/ 30 апреля 2018

Кто-нибудь успешно использует gcsfuse?

Я пытался удалить все разрешения по умолчанию для корзины, и настройте сервисную учетную запись:

 gcloud auth activate-service-account to activate serviceaccname

А потом работает:

gcsfuse --debug_gcs --foreground cloudbuckethere /backup

gcs: Req 0x0: -> ListObjects () (307.880239ms): googleapi: Ошибка 403: xxxxxx-compute@developer.gserviceaccount.com не имеет доступа к storage.objects.list

Странно, что жалуется, что пользователь xxxxx-compute, который не является моей активированной учетной записью службы:

gcloud auth list

Показывает ли моя текущая учетная запись службы активна ...

Я также предоставил владельцу администратора, владельцу объекта администратора, запись объекта, чтение объекта в корзину для serviceaccname.

Если я предоставлю xxxxx-compute своему ведру со всеми разрешениями, включая унаследованные разрешения, листинг будет работать. но запись любого файла в каталог завершилась неудачно:

googleapi: Error 403: Insufficient Permission, insufficientPermissions

У кого-нибудь есть удача?

1 Ответ

0 голосов
/ 04 июня 2018

Я нашел решение, но не уверен, что это хорошее решение, но оно работает.

Настройте учетную запись службы и загрузите файл JSON.

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

Затем запустите add в переменную окружения, указав путь к файлу JSON службы.

GOOGLE_APPLICATION_CREDENTIALS=/path-to-json/gcloud.json gcsfuse --debug_gcs --foreground bucketname /path-to-mount

Также обратите внимание, что по умолчанию он может занимать много места в каталоге tmp. Добавление флага:

... --temp-dir=/someotherpath

Действительно поможет, если у вас ограниченное пространство в /tmp.

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