👽

Google Cloudでのアカウント確認方法の仕方

2022/01/01に公開

Google Cloudにはaws sts get-caller-identityのようなコマンドがないのか?

  • これまでAWSを触ってきたことが多かったので、GoogleCloudでの学習ではついついAWSとの比較をしてしまいます。
  • AWSでCLIを実行する前にはaws sts get-caller-identityを打つのが癖になっていました。
    ❯ aws sts get-caller-identity
    {
    "UserId": "AIDAJUXXXXXXXXXXXXX",
    "Account": "46660999999999",
    "Arn": "arn:aws:iam::46660999999999:user/XXXXXX"
    }
    
  • 上記のコマンドから今自分がどのAWSアカウントに対してCLIを実行するのかを確認する、という運用をしていました。
    • これと同等のことがGoogle Cloudにはあるのでしょうか?それが今回確認したいことです。

調べてみた

  • 以下がそれに近いのかなという感覚。

    • gcloud auth list

      • アカウントが複数あればそれらが見えて、さらに今Activeになっているアカウントが何かが見える
      ❯ gcloud auth list
      Credentialed Accounts
      ACTIVE  ACCOUNT
              ansible-provision@nagano-test-002.iam.gserviceaccount.com
      *       tnaganoterraform001@gmail.com
      
    • gcloud config configurations list

      • アカウントだけでなくプロジェクトやCOMPUTE_DEFAULT_ZONEなどもどんな設定になっているか見える
      ❯ gcloud config configurations list
      NAME            IS_ACTIVE  ACCOUNT                                                    PROJECT          COMPUTE_DEFAULT_ZONE  COMPUTE_DEFAULT_REGION
      default         True       tnaganoterraform001@gmail.com                              nagano-test-002  asia-northeast1-a
      tnagano-gcp001  False      ansible-provision@nagano-test-002.iam.gserviceaccount.com  nagano-test-002  asia-northeast-1a     asia-northeast1
      
  • その他

    • gcloud projects list
      • 今、Activeになっているアカウントのプロジェクト一覧が見える
    • gcloud projects list --account {ACCOUNT}
      • こうすればActiveじゃないアカウントのプロジェクトも見える

Google CloudではIAM周りがAWSとちょっと違う

  • AWSではIAMユーザーを作るところから開始って感覚でしたが、Google CloudはユーザーがGoogleアカウントだったりGoogleワークスペースに存在しているので、Google CloudのIAMでユーザーを管理するのはベストプラクティスではない、というのは違いとしてあるんだなーと思いました。

Discussion