Який найпростіший спосіб використовувати gcloud
командний рядок неінтерактивно з обліковим записом служби поза межами GCE? Переважно без засмічення файлової системи файлами облікових даних, що і gcloud auth activate-service-account --key-file=...
робить.
Існує багато випадків використання для використання gcloud
з обліковим записом послуги. Наприклад, на сервері я хотів би перевірити, GOOGLE_APPLICATION_CREDENTIALS
чи правильно встановлено та має необхідні дозволи перед запуском програми. Або я хотів би запустити кілька сценаріїв налаштування чи сценаріїв cron, які виконують певну перевірку за допомогою gcloud
командного рядка.
Бібліотеки Google Cloud (наприклад, python , java ) автоматично використовують змінну середовища GOOGLE_APPLICATION_CREDENTIALS
для автентифікації в Google Cloud. Але, на жаль, цей командний рядок, здається, не впливає gcloud
. Який чистий спосіб використовувати gcloud
, залишаючи недоторканою файлову систему?
$ GOOGLE_APPLICATION_CREDENTIALS=/etc/my-service-account-4b4b6e63aaed.json gcloud alpha pubsub topics publish testtopic hello
ERROR: (gcloud.alpha.pubsub.topics.publish) You do not currently have an active account selected.
Please run:
$ gcloud auth login
to obtain new credentials, or if you have already logged in with a
different account:
$ gcloud config set account ACCOUNT
to select an already authenticated account to use.