Да, ваш подход мне кажется приемлемым. Я не уверен, как вы «отправляете» машины, но рекомендуется использовать сервисную учетную запись для каждой машины, насколько это возможно. удалить ключ служебной учетной записи, если машина когда-либо будет скомпрометирована.
Вы можете и должны полностью автоматизировать процесс создания файлов ключей учетных данных с помощью API Google или интерфейса gcloud.
Рекомендуется периодически ротировать (перевыпускать) файлы ключей учетных данных. Это на тот случай, если они случайно утекут таким образом, что вы этого не заметите. Если вы всегда отзываете ключ и выдаете новый каждый месяц, это несколько ограничивает общий ущерб.
Если вы выполняете ротацию ключей, значит, у вас проблема с распределением ключей. Как безопасно распространить новые файлы ключей учетных данных на компьютеры, которые вы поставляли в прошлом? Вы можете использовать GnuPG для создавать пара открытого и закрытого ключей на каждом хосте. Каждый месяц вы можете запускать сценарий, который генерирует новый файл ключей учетных данных для каждой машины, зашифровывать его с помощью открытого ключа GPG машины, а затем удалить старые ключи сервисной учетной записи.
Сценарий, который помещает изображения в корзину, должен затем периодически «звонить домой», чтобы получить новый ключевой файл учетных данных, зашифрованный GPG. Тогда это может расшифровать его собственным секретным ключом. Один из способов сделать это — поместить зашифрованные ключи в другую корзину. Создайте одну учетную запись службы, которая сможет только читать этот сегмент. Создайте один файл ключей учетных данных для этой учетной записи службы, которую вы устанавливаете на каждый компьютер. Этот ключ затем можно будет использовать только для сбора зашифрованных ключей, которые можно расшифровать только на правильном хосте.