gcloudKomut satırını GCE dışındaki bir Hizmet Hesabı ile etkileşimsiz olarak kullanmanın en basit yolu nedir ? Tercihen dosya sistemini kimlik bilgileri dosyaları ile doldurmadan, bu da ne gcloud auth activate-service-account --key-file=...yapar.
gcloudHizmet hesabıyla kullanmak için birçok kullanım durumu vardır . Örneğin, bir sunucuda, GOOGLE_APPLICATION_CREDENTIALSuygulamamı çalıştırmadan önce doğru ayarlandığını ve gerekli izinlere sahip olduğunu test etmek istiyorum. Veya, gcloudkomut satırı ile bazı denetim gerçekleştiren bazı kurulum komut dosyalarını veya cron komut dosyalarını çalıştırmak istiyorum .
Google Cloud kitaplıkları (örn. Python , java ) GOOGLE_APPLICATION_CREDENTIALSGoogle Cloud'da kimlik doğrulaması yapmak için ortam değişkenini otomatik olarak kullanır . Ancak ne yazık ki, bu komut satırının üzerinde hiçbir etkisi yok gibi görünüyor gcloud. gcloudDosya sistemini olduğu gibi bırakırken kullanmanın temiz yolu nedir ?
$ 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.