gcloud
GCEの外部のサービスアカウントでコマンドラインを非対話的に使用する最も簡単な方法は何ですか?できれば、資格情報ファイルでファイルシステムを散らかさgcloud auth activate-service-account --key-file=...
ないでください。
gcloud
サービスアカウントで使用する多くのユースケースがあります。たとえば、サーバーGOOGLE_APPLICATION_CREDENTIALS
上で、アプリケーションを実行する前にが正しく設定され、必要なアクセス許可があることをテストしたいと思います。または、gcloud
コマンドラインでチェックを実行するセットアップスクリプトまたはcronスクリプトを実行したいと思います。
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.