Изображения и учетные данные машины GCP - PullRequest
0 голосов
/ 14 сентября 2018

У меня есть вопрос, касающийся пользовательских изображений Google Cloud и как / если сохраняются учетные данные. А именно, если я настраиваю виртуальную машину и сохраняю образ машины с открытым доступом, возможно, я предоставляю учетные данные ??

В частности, я работаю над облачным приложением, основанным на «настраиваемом» образе, на котором установлены как gsutil, так и docker. Базовые виртуальные машины GCE имеют предварительно установленную версию gsutil, но не имеют докер. С другой стороны, в оптимизированной для контейнера ОС есть докер, но у нет с gsutil. Поэтому я только начинаю с базового образа Debian и устанавливаю докер, чтобы получить то, что мне нужно.

В идеале, когда я распространяю свое приложение, я хотел бы просто предоставить это настроенное изображение для публичного использования; Таким образом, пользователям не придется тратить дополнительные усилия на создание собственных изображений.

Однако меня беспокоит то, что, поскольку я использовал gsutil на настроенной виртуальной машине, сохранение этого диска в образе непреднамеренно сохранит некоторые учетные данные, связанные с моим проектом (если так, где они находятся?). Следовательно, любой, кто использует мое изображение, также получит эти учетные данные.

1 Ответ

0 голосов
/ 17 сентября 2018

Я пытался воспроизвести вашу ситуацию. Я создал образ клиента на диске экземпляра, который мог получить доступ к моим хранилищам проекта. Затем я поделился изображением для другого пользователя в другом проекте. Пользователь может создать экземпляр из этого общего изображения. Однако, когда он попытался получить доступ к корзинам моего проекта, он обнаружил ошибку AccessDeniedException.

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

Кроме того, (как упоминал Патрик В. ниже) любая вещь, которую вы запускаете из экземпляра виртуальной машины GCE, будет использовать служебную учетную запись виртуальной машины (если не указано иное). Если у учетной записи службы есть доступ к корзине, то будут и ваши приложения (включая контейнеры Docker.

...