LoginSignup
3
2

More than 1 year has passed since last update.

terraformでGCPやる際の認証方法(ユーザアカウント編)

Last updated at Posted at 2022-11-05

GCPのリソース作成にTerraformを利用するときのお話。
恐らくサービスアカウントによる認証の場合は問題ないと思いますが、ユーザアカウントによる認証でTerraformを利用する場合に10分ほど溶かしたので備忘録しておきます。

GCPでTerraformやる場合の正しい認証コマンド (結論!)

$ gcloud auth application-default login

GCPでTerraformやる場合、不十分な認証コマンド (失敗例)

$ gcloud auth login

不十分な認証コマンドでterraform applyするとどうなるか?

以下のように、invalid_grantという400エラーが発生してしまいます。

module.stg.google_storage_bucket.XXXXXXXXXXX: Creating...
╷
│ Error: Post "https://storage.googleapis.com/storage/v1/b?alt=json&prettyPrint=false&project=projectXXXXXX": oauth2: cannot fetch token: 400 Bad Request
│ Response: {
│   "error": "invalid_grant",
│   "error_description": "Bad Request"
│ }
│ 
│   with module.stg.google_storage_bucket.XXXXXXXXXXX,
│   on ../../modules/XXXXXXXXXXX.tf line 164, in resource "google_storage_bucket" "XXXXXXXXXXX":
│  164: resource "google_storage_bucket" "XXXXXXXXXXX" {
│ 
╵

はじめログインしているのになぜ?と思いましたが、gcloud auth loginはあくまでCLIとしてのログインのようです。(たぶんです)
一応、このあたりに説明がありますが、いまいち曖昧な感じもする気がしています。難しいですね。

この解決策に気づけたURLも一応残しておきます。→こちら

現場からは以上です!

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2